@ecomweb/cli 0.1.0
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 +96 -0
- package/bin/run.js +8 -0
- package/bin/run.ts +5 -0
- package/dist/base-command.d.ts +32 -0
- package/dist/base-command.js +111 -0
- package/dist/base-command.js.map +1 -0
- package/dist/commands/analytics/ga4/all.d.ts +21 -0
- package/dist/commands/analytics/ga4/all.js +60 -0
- package/dist/commands/analytics/ga4/all.js.map +1 -0
- package/dist/commands/analytics/ga4/overview.d.ts +20 -0
- package/dist/commands/analytics/ga4/overview.js +40 -0
- package/dist/commands/analytics/ga4/overview.js.map +1 -0
- package/dist/commands/analytics/ga4/sessions-by-channel.d.ts +21 -0
- package/dist/commands/analytics/ga4/sessions-by-channel.js +44 -0
- package/dist/commands/analytics/ga4/sessions-by-channel.js.map +1 -0
- package/dist/commands/analytics/ga4/trends.d.ts +21 -0
- package/dist/commands/analytics/ga4/trends.js +46 -0
- package/dist/commands/analytics/ga4/trends.js.map +1 -0
- package/dist/commands/analytics/ga4/users-by-country.d.ts +21 -0
- package/dist/commands/analytics/ga4/users-by-country.js +44 -0
- package/dist/commands/analytics/ga4/users-by-country.js.map +1 -0
- package/dist/commands/analytics/ga4/views-by-page.d.ts +21 -0
- package/dist/commands/analytics/ga4/views-by-page.js +44 -0
- package/dist/commands/analytics/ga4/views-by-page.js.map +1 -0
- package/dist/commands/analytics/gsc/all.d.ts +21 -0
- package/dist/commands/analytics/gsc/all.js +46 -0
- package/dist/commands/analytics/gsc/all.js.map +1 -0
- package/dist/commands/analytics/gsc/search-console.d.ts +21 -0
- package/dist/commands/analytics/gsc/search-console.js +45 -0
- package/dist/commands/analytics/gsc/search-console.js.map +1 -0
- package/dist/commands/analytics/sales/all.d.ts +21 -0
- package/dist/commands/analytics/sales/all.js +54 -0
- package/dist/commands/analytics/sales/all.js.map +1 -0
- package/dist/commands/analytics/sales/summary.d.ts +21 -0
- package/dist/commands/analytics/sales/summary.js +44 -0
- package/dist/commands/analytics/sales/summary.js.map +1 -0
- package/dist/commands/analytics/sales/time-series.d.ts +19 -0
- package/dist/commands/analytics/sales/time-series.js +35 -0
- package/dist/commands/analytics/sales/time-series.js.map +1 -0
- package/dist/commands/analytics/summary.js.map +1 -0
- package/dist/commands/analytics/time-series.js.map +1 -0
- package/dist/commands/assets/bulk-delete.d.ts +19 -0
- package/dist/commands/assets/bulk-delete.js +41 -0
- package/dist/commands/assets/bulk-delete.js.map +1 -0
- package/dist/commands/assets/delete.d.ts +21 -0
- package/dist/commands/assets/delete.js +32 -0
- package/dist/commands/assets/delete.js.map +1 -0
- package/dist/commands/assets/get-by-entity.d.ts +26 -0
- package/dist/commands/assets/get-by-entity.js +43 -0
- package/dist/commands/assets/get-by-entity.js.map +1 -0
- package/dist/commands/assets/get.d.ts +22 -0
- package/dist/commands/assets/get.js +37 -0
- package/dist/commands/assets/get.js.map +1 -0
- package/dist/commands/assets/link.d.ts +26 -0
- package/dist/commands/assets/link.js +71 -0
- package/dist/commands/assets/link.js.map +1 -0
- package/dist/commands/assets/list.d.ts +28 -0
- package/dist/commands/assets/list.js +84 -0
- package/dist/commands/assets/list.js.map +1 -0
- package/dist/commands/assets/replace.d.ts +23 -0
- package/dist/commands/assets/replace.js +102 -0
- package/dist/commands/assets/replace.js.map +1 -0
- package/dist/commands/assets/unlink.d.ts +22 -0
- package/dist/commands/assets/unlink.js +52 -0
- package/dist/commands/assets/unlink.js.map +1 -0
- package/dist/commands/assets/update.d.ts +29 -0
- package/dist/commands/assets/update.js +84 -0
- package/dist/commands/assets/update.js.map +1 -0
- package/dist/commands/assets/upload-and-link.d.ts +29 -0
- package/dist/commands/assets/upload-and-link.js +127 -0
- package/dist/commands/assets/upload-and-link.js.map +1 -0
- package/dist/commands/assets/upload-video.d.ts +22 -0
- package/dist/commands/assets/upload-video.js +88 -0
- package/dist/commands/assets/upload-video.js.map +1 -0
- package/dist/commands/assets/upload.d.ts +27 -0
- package/dist/commands/assets/upload.js +110 -0
- package/dist/commands/assets/upload.js.map +1 -0
- package/dist/commands/auth/login.d.ts +18 -0
- package/dist/commands/auth/login.js +52 -0
- package/dist/commands/auth/login.js.map +1 -0
- package/dist/commands/auth/logout.d.ts +18 -0
- package/dist/commands/auth/logout.js +23 -0
- package/dist/commands/auth/logout.js.map +1 -0
- package/dist/commands/auth/profiles/delete.d.ts +21 -0
- package/dist/commands/auth/profiles/delete.js +39 -0
- package/dist/commands/auth/profiles/delete.js.map +1 -0
- package/dist/commands/auth/profiles/list.d.ts +18 -0
- package/dist/commands/auth/profiles/list.js +30 -0
- package/dist/commands/auth/profiles/list.js.map +1 -0
- package/dist/commands/auth/profiles/use.d.ts +21 -0
- package/dist/commands/auth/profiles/use.js +36 -0
- package/dist/commands/auth/profiles/use.js.map +1 -0
- package/dist/commands/auth/register.d.ts +20 -0
- package/dist/commands/auth/register.js +35 -0
- package/dist/commands/auth/register.js.map +1 -0
- package/dist/commands/auth/status.d.ts +18 -0
- package/dist/commands/auth/status.js +27 -0
- package/dist/commands/auth/status.js.map +1 -0
- package/dist/commands/auth/verify.d.ts +20 -0
- package/dist/commands/auth/verify.js +43 -0
- package/dist/commands/auth/verify.js.map +1 -0
- package/dist/commands/banners/create.d.ts +27 -0
- package/dist/commands/banners/create.js +75 -0
- package/dist/commands/banners/create.js.map +1 -0
- package/dist/commands/banners/delete.d.ts +25 -0
- package/dist/commands/banners/delete.js +35 -0
- package/dist/commands/banners/delete.js.map +1 -0
- package/dist/commands/banners/get.d.ts +24 -0
- package/dist/commands/banners/get.js +31 -0
- package/dist/commands/banners/get.js.map +1 -0
- package/dist/commands/banners/list.d.ts +24 -0
- package/dist/commands/banners/list.js +65 -0
- package/dist/commands/banners/list.js.map +1 -0
- package/dist/commands/banners/update.d.ts +33 -0
- package/dist/commands/banners/update.js +81 -0
- package/dist/commands/banners/update.js.map +1 -0
- package/dist/commands/blog-categories/all.d.ts +18 -0
- package/dist/commands/blog-categories/all.js +18 -0
- package/dist/commands/blog-categories/all.js.map +1 -0
- package/dist/commands/blog-categories/create.d.ts +25 -0
- package/dist/commands/blog-categories/create.js +65 -0
- package/dist/commands/blog-categories/create.js.map +1 -0
- package/dist/commands/blog-categories/delete.d.ts +24 -0
- package/dist/commands/blog-categories/delete.js +30 -0
- package/dist/commands/blog-categories/delete.js.map +1 -0
- package/dist/commands/blog-categories/list.d.ts +24 -0
- package/dist/commands/blog-categories/list.js +51 -0
- package/dist/commands/blog-categories/list.js.map +1 -0
- package/dist/commands/blog-categories/update.d.ts +31 -0
- package/dist/commands/blog-categories/update.js +68 -0
- package/dist/commands/blog-categories/update.js.map +1 -0
- package/dist/commands/blog-posts/all.d.ts +19 -0
- package/dist/commands/blog-posts/all.js +30 -0
- package/dist/commands/blog-posts/all.js.map +1 -0
- package/dist/commands/blog-posts/batch-create.d.ts +22 -0
- package/dist/commands/blog-posts/batch-create.js +55 -0
- package/dist/commands/blog-posts/batch-create.js.map +1 -0
- package/dist/commands/blog-posts/batch-delete.d.ts +21 -0
- package/dist/commands/blog-posts/batch-delete.js +46 -0
- package/dist/commands/blog-posts/batch-delete.js.map +1 -0
- package/dist/commands/blog-posts/batch-update.d.ts +24 -0
- package/dist/commands/blog-posts/batch-update.js +76 -0
- package/dist/commands/blog-posts/batch-update.js.map +1 -0
- package/dist/commands/blog-posts/create.d.ts +31 -0
- package/dist/commands/blog-posts/create.js +92 -0
- package/dist/commands/blog-posts/create.js.map +1 -0
- package/dist/commands/blog-posts/delete.d.ts +24 -0
- package/dist/commands/blog-posts/delete.js +30 -0
- package/dist/commands/blog-posts/delete.js.map +1 -0
- package/dist/commands/blog-posts/generate.d.ts +22 -0
- package/dist/commands/blog-posts/generate.js +42 -0
- package/dist/commands/blog-posts/generate.js.map +1 -0
- package/dist/commands/blog-posts/get.d.ts +24 -0
- package/dist/commands/blog-posts/get.js +26 -0
- package/dist/commands/blog-posts/get.js.map +1 -0
- package/dist/commands/blog-posts/import.d.ts +24 -0
- package/dist/commands/blog-posts/import.js +103 -0
- package/dist/commands/blog-posts/import.js.map +1 -0
- package/dist/commands/blog-posts/list.d.ts +29 -0
- package/dist/commands/blog-posts/list.js +76 -0
- package/dist/commands/blog-posts/list.js.map +1 -0
- package/dist/commands/blog-posts/search.d.ts +27 -0
- package/dist/commands/blog-posts/search.js +55 -0
- package/dist/commands/blog-posts/search.js.map +1 -0
- package/dist/commands/blog-posts/stats.d.ts +18 -0
- package/dist/commands/blog-posts/stats.js +22 -0
- package/dist/commands/blog-posts/stats.js.map +1 -0
- package/dist/commands/blog-posts/update.d.ts +37 -0
- package/dist/commands/blog-posts/update.js +96 -0
- package/dist/commands/blog-posts/update.js.map +1 -0
- package/dist/commands/blog-settings/get.d.ts +18 -0
- package/dist/commands/blog-settings/get.js +23 -0
- package/dist/commands/blog-settings/get.js.map +1 -0
- package/dist/commands/blog-settings/update.d.ts +30 -0
- package/dist/commands/blog-settings/update.js +79 -0
- package/dist/commands/blog-settings/update.js.map +1 -0
- package/dist/commands/blog-tags/all.d.ts +18 -0
- package/dist/commands/blog-tags/all.js +18 -0
- package/dist/commands/blog-tags/all.js.map +1 -0
- package/dist/commands/blog-tags/create.d.ts +22 -0
- package/dist/commands/blog-tags/create.js +56 -0
- package/dist/commands/blog-tags/create.js.map +1 -0
- package/dist/commands/blog-tags/delete.d.ts +24 -0
- package/dist/commands/blog-tags/delete.js +30 -0
- package/dist/commands/blog-tags/delete.js.map +1 -0
- package/dist/commands/blog-tags/list.d.ts +24 -0
- package/dist/commands/blog-tags/list.js +50 -0
- package/dist/commands/blog-tags/list.js.map +1 -0
- package/dist/commands/categories/all.d.ts +19 -0
- package/dist/commands/categories/all.js +29 -0
- package/dist/commands/categories/all.js.map +1 -0
- package/dist/commands/categories/create.d.ts +28 -0
- package/dist/commands/categories/create.js +78 -0
- package/dist/commands/categories/create.js.map +1 -0
- package/dist/commands/categories/delete.d.ts +25 -0
- package/dist/commands/categories/delete.js +35 -0
- package/dist/commands/categories/delete.js.map +1 -0
- package/dist/commands/categories/get.d.ts +24 -0
- package/dist/commands/categories/get.js +31 -0
- package/dist/commands/categories/get.js.map +1 -0
- package/dist/commands/categories/list.d.ts +28 -0
- package/dist/commands/categories/list.js +70 -0
- package/dist/commands/categories/list.js.map +1 -0
- package/dist/commands/categories/update.d.ts +34 -0
- package/dist/commands/categories/update.js +84 -0
- package/dist/commands/categories/update.js.map +1 -0
- package/dist/commands/collections/all.d.ts +19 -0
- package/dist/commands/collections/all.js +30 -0
- package/dist/commands/collections/all.js.map +1 -0
- package/dist/commands/collections/create.d.ts +28 -0
- package/dist/commands/collections/create.js +85 -0
- package/dist/commands/collections/create.js.map +1 -0
- package/dist/commands/collections/delete.d.ts +26 -0
- package/dist/commands/collections/delete.js +39 -0
- package/dist/commands/collections/delete.js.map +1 -0
- package/dist/commands/collections/get.d.ts +24 -0
- package/dist/commands/collections/get.js +31 -0
- package/dist/commands/collections/get.js.map +1 -0
- package/dist/commands/collections/list.d.ts +29 -0
- package/dist/commands/collections/list.js +75 -0
- package/dist/commands/collections/list.js.map +1 -0
- package/dist/commands/collections/update.d.ts +34 -0
- package/dist/commands/collections/update.js +91 -0
- package/dist/commands/collections/update.js.map +1 -0
- package/dist/commands/customers/addresses.d.ts +21 -0
- package/dist/commands/customers/addresses.js +32 -0
- package/dist/commands/customers/addresses.js.map +1 -0
- package/dist/commands/customers/create.d.ts +26 -0
- package/dist/commands/customers/create.js +70 -0
- package/dist/commands/customers/create.js.map +1 -0
- package/dist/commands/customers/delete.d.ts +24 -0
- package/dist/commands/customers/delete.js +30 -0
- package/dist/commands/customers/delete.js.map +1 -0
- package/dist/commands/customers/get.d.ts +21 -0
- package/dist/commands/customers/get.js +31 -0
- package/dist/commands/customers/get.js.map +1 -0
- package/dist/commands/customers/list.d.ts +24 -0
- package/dist/commands/customers/list.js +65 -0
- package/dist/commands/customers/list.js.map +1 -0
- package/dist/commands/customers/stats.d.ts +18 -0
- package/dist/commands/customers/stats.js +22 -0
- package/dist/commands/customers/stats.js.map +1 -0
- package/dist/commands/customers/update.d.ts +31 -0
- package/dist/commands/customers/update.js +74 -0
- package/dist/commands/customers/update.js.map +1 -0
- package/dist/commands/describe.d.ts +22 -0
- package/dist/commands/describe.js +52 -0
- package/dist/commands/describe.js.map +1 -0
- package/dist/commands/health/check.d.ts +18 -0
- package/dist/commands/health/check.js +35 -0
- package/dist/commands/health/check.js.map +1 -0
- package/dist/commands/init.d.ts +22 -0
- package/dist/commands/init.js +84 -0
- package/dist/commands/init.js.map +1 -0
- package/dist/commands/orders/batch-cancel.d.ts +23 -0
- package/dist/commands/orders/batch-cancel.js +71 -0
- package/dist/commands/orders/batch-cancel.js.map +1 -0
- package/dist/commands/orders/batch-fulfill.d.ts +23 -0
- package/dist/commands/orders/batch-fulfill.js +71 -0
- package/dist/commands/orders/batch-fulfill.js.map +1 -0
- package/dist/commands/orders/batch-update.d.ts +24 -0
- package/dist/commands/orders/batch-update.js +77 -0
- package/dist/commands/orders/batch-update.js.map +1 -0
- package/dist/commands/orders/cancel.d.ts +24 -0
- package/dist/commands/orders/cancel.js +30 -0
- package/dist/commands/orders/cancel.js.map +1 -0
- package/dist/commands/orders/create.d.ts +20 -0
- package/dist/commands/orders/create.js +49 -0
- package/dist/commands/orders/create.js.map +1 -0
- package/dist/commands/orders/deliver.d.ts +25 -0
- package/dist/commands/orders/deliver.js +36 -0
- package/dist/commands/orders/deliver.js.map +1 -0
- package/dist/commands/orders/fulfill.d.ts +24 -0
- package/dist/commands/orders/fulfill.js +33 -0
- package/dist/commands/orders/fulfill.js.map +1 -0
- package/dist/commands/orders/get.d.ts +26 -0
- package/dist/commands/orders/get.js +40 -0
- package/dist/commands/orders/get.js.map +1 -0
- package/dist/commands/orders/list.d.ts +33 -0
- package/dist/commands/orders/list.js +93 -0
- package/dist/commands/orders/list.js.map +1 -0
- package/dist/commands/orders/resume.d.ts +24 -0
- package/dist/commands/orders/resume.js +32 -0
- package/dist/commands/orders/resume.js.map +1 -0
- package/dist/commands/orders/ship.d.ts +26 -0
- package/dist/commands/orders/ship.js +40 -0
- package/dist/commands/orders/ship.js.map +1 -0
- package/dist/commands/orders/stats.d.ts +18 -0
- package/dist/commands/orders/stats.js +22 -0
- package/dist/commands/orders/stats.js.map +1 -0
- package/dist/commands/orders/transitions.d.ts +24 -0
- package/dist/commands/orders/transitions.js +33 -0
- package/dist/commands/orders/transitions.js.map +1 -0
- package/dist/commands/orders/update.d.ts +33 -0
- package/dist/commands/orders/update.js +90 -0
- package/dist/commands/orders/update.js.map +1 -0
- package/dist/commands/products/all.d.ts +19 -0
- package/dist/commands/products/all.js +30 -0
- package/dist/commands/products/all.js.map +1 -0
- package/dist/commands/products/batch-create.d.ts +22 -0
- package/dist/commands/products/batch-create.js +55 -0
- package/dist/commands/products/batch-create.js.map +1 -0
- package/dist/commands/products/batch-delete.d.ts +21 -0
- package/dist/commands/products/batch-delete.js +46 -0
- package/dist/commands/products/batch-delete.js.map +1 -0
- package/dist/commands/products/batch-update.d.ts +24 -0
- package/dist/commands/products/batch-update.js +76 -0
- package/dist/commands/products/batch-update.js.map +1 -0
- package/dist/commands/products/create.d.ts +27 -0
- package/dist/commands/products/create.js +79 -0
- package/dist/commands/products/create.js.map +1 -0
- package/dist/commands/products/delete.d.ts +26 -0
- package/dist/commands/products/delete.js +38 -0
- package/dist/commands/products/delete.js.map +1 -0
- package/dist/commands/products/get.d.ts +29 -0
- package/dist/commands/products/get.js +44 -0
- package/dist/commands/products/get.js.map +1 -0
- package/dist/commands/products/list.d.ts +34 -0
- package/dist/commands/products/list.js +89 -0
- package/dist/commands/products/list.js.map +1 -0
- package/dist/commands/products/search.d.ts +30 -0
- package/dist/commands/products/search.js +72 -0
- package/dist/commands/products/search.js.map +1 -0
- package/dist/commands/products/stats.d.ts +18 -0
- package/dist/commands/products/stats.js +22 -0
- package/dist/commands/products/stats.js.map +1 -0
- package/dist/commands/products/update.d.ts +34 -0
- package/dist/commands/products/update.js +111 -0
- package/dist/commands/products/update.js.map +1 -0
- package/dist/commands/products/variant-options.d.ts +22 -0
- package/dist/commands/products/variant-options.js +48 -0
- package/dist/commands/products/variant-options.js.map +1 -0
- package/dist/commands/promotions/batch-delete.d.ts +21 -0
- package/dist/commands/promotions/batch-delete.js +46 -0
- package/dist/commands/promotions/batch-delete.js.map +1 -0
- package/dist/commands/promotions/create.d.ts +37 -0
- package/dist/commands/promotions/create.js +105 -0
- package/dist/commands/promotions/create.js.map +1 -0
- package/dist/commands/promotions/delete.d.ts +24 -0
- package/dist/commands/promotions/delete.js +30 -0
- package/dist/commands/promotions/delete.js.map +1 -0
- package/dist/commands/promotions/get-by-code.d.ts +21 -0
- package/dist/commands/promotions/get-by-code.js +25 -0
- package/dist/commands/promotions/get-by-code.js.map +1 -0
- package/dist/commands/promotions/get.d.ts +24 -0
- package/dist/commands/promotions/get.js +26 -0
- package/dist/commands/promotions/get.js.map +1 -0
- package/dist/commands/promotions/list.d.ts +31 -0
- package/dist/commands/promotions/list.js +82 -0
- package/dist/commands/promotions/list.js.map +1 -0
- package/dist/commands/promotions/stats.d.ts +18 -0
- package/dist/commands/promotions/stats.js +22 -0
- package/dist/commands/promotions/stats.js.map +1 -0
- package/dist/commands/promotions/update.d.ts +38 -0
- package/dist/commands/promotions/update.js +94 -0
- package/dist/commands/promotions/update.js.map +1 -0
- package/dist/commands/reviews/bulk-import.d.ts +24 -0
- package/dist/commands/reviews/bulk-import.js +82 -0
- package/dist/commands/reviews/bulk-import.js.map +1 -0
- package/dist/commands/reviews/bulk-moderate.d.ts +24 -0
- package/dist/commands/reviews/bulk-moderate.js +66 -0
- package/dist/commands/reviews/bulk-moderate.js.map +1 -0
- package/dist/commands/reviews/create.d.ts +29 -0
- package/dist/commands/reviews/create.js +84 -0
- package/dist/commands/reviews/create.js.map +1 -0
- package/dist/commands/reviews/delete-reply.d.ts +22 -0
- package/dist/commands/reviews/delete-reply.js +31 -0
- package/dist/commands/reviews/delete-reply.js.map +1 -0
- package/dist/commands/reviews/delete.d.ts +21 -0
- package/dist/commands/reviews/delete.js +30 -0
- package/dist/commands/reviews/delete.js.map +1 -0
- package/dist/commands/reviews/get.d.ts +21 -0
- package/dist/commands/reviews/get.js +31 -0
- package/dist/commands/reviews/get.js.map +1 -0
- package/dist/commands/reviews/list.d.ts +34 -0
- package/dist/commands/reviews/list.js +83 -0
- package/dist/commands/reviews/list.js.map +1 -0
- package/dist/commands/reviews/reply.d.ts +25 -0
- package/dist/commands/reviews/reply.js +59 -0
- package/dist/commands/reviews/reply.js.map +1 -0
- package/dist/commands/reviews/stats.d.ts +18 -0
- package/dist/commands/reviews/stats.js +25 -0
- package/dist/commands/reviews/stats.js.map +1 -0
- package/dist/commands/reviews/update-reply.d.ts +25 -0
- package/dist/commands/reviews/update-reply.js +60 -0
- package/dist/commands/reviews/update-reply.js.map +1 -0
- package/dist/commands/reviews/update.d.ts +30 -0
- package/dist/commands/reviews/update.js +83 -0
- package/dist/commands/reviews/update.js.map +1 -0
- package/dist/commands/setup.d.ts +19 -0
- package/dist/commands/setup.js +186 -0
- package/dist/commands/setup.js.map +1 -0
- package/dist/commands/shipping-methods/create.d.ts +24 -0
- package/dist/commands/shipping-methods/create.js +63 -0
- package/dist/commands/shipping-methods/create.js.map +1 -0
- package/dist/commands/shipping-methods/delete.d.ts +24 -0
- package/dist/commands/shipping-methods/delete.js +30 -0
- package/dist/commands/shipping-methods/delete.js.map +1 -0
- package/dist/commands/shipping-methods/get.d.ts +24 -0
- package/dist/commands/shipping-methods/get.js +31 -0
- package/dist/commands/shipping-methods/get.js.map +1 -0
- package/dist/commands/shipping-methods/list.d.ts +26 -0
- package/dist/commands/shipping-methods/list.js +63 -0
- package/dist/commands/shipping-methods/list.js.map +1 -0
- package/dist/commands/shipping-methods/update.d.ts +30 -0
- package/dist/commands/shipping-methods/update.js +69 -0
- package/dist/commands/shipping-methods/update.js.map +1 -0
- package/dist/commands/shipping-programs/calculate.d.ts +26 -0
- package/dist/commands/shipping-programs/calculate.js +72 -0
- package/dist/commands/shipping-programs/calculate.js.map +1 -0
- package/dist/commands/shipping-programs/create-rule.d.ts +40 -0
- package/dist/commands/shipping-programs/create-rule.js +110 -0
- package/dist/commands/shipping-programs/create-rule.js.map +1 -0
- package/dist/commands/shipping-programs/create.d.ts +27 -0
- package/dist/commands/shipping-programs/create.js +75 -0
- package/dist/commands/shipping-programs/create.js.map +1 -0
- package/dist/commands/shipping-programs/delete-rule.d.ts +28 -0
- package/dist/commands/shipping-programs/delete-rule.js +42 -0
- package/dist/commands/shipping-programs/delete-rule.js.map +1 -0
- package/dist/commands/shipping-programs/delete.d.ts +24 -0
- package/dist/commands/shipping-programs/delete.js +30 -0
- package/dist/commands/shipping-programs/delete.js.map +1 -0
- package/dist/commands/shipping-programs/get-rule.d.ts +28 -0
- package/dist/commands/shipping-programs/get-rule.js +38 -0
- package/dist/commands/shipping-programs/get-rule.js.map +1 -0
- package/dist/commands/shipping-programs/get.d.ts +24 -0
- package/dist/commands/shipping-programs/get.js +32 -0
- package/dist/commands/shipping-programs/get.js.map +1 -0
- package/dist/commands/shipping-programs/list-rules.d.ts +34 -0
- package/dist/commands/shipping-programs/list-rules.js +86 -0
- package/dist/commands/shipping-programs/list-rules.js.map +1 -0
- package/dist/commands/shipping-programs/list.d.ts +30 -0
- package/dist/commands/shipping-programs/list.js +74 -0
- package/dist/commands/shipping-programs/list.js.map +1 -0
- package/dist/commands/shipping-programs/update-rule.d.ts +44 -0
- package/dist/commands/shipping-programs/update-rule.js +120 -0
- package/dist/commands/shipping-programs/update-rule.js.map +1 -0
- package/dist/commands/shipping-programs/update.d.ts +33 -0
- package/dist/commands/shipping-programs/update.js +81 -0
- package/dist/commands/shipping-programs/update.js.map +1 -0
- package/dist/commands/shipping-zones/create.d.ts +22 -0
- package/dist/commands/shipping-zones/create.js +57 -0
- package/dist/commands/shipping-zones/create.js.map +1 -0
- package/dist/commands/shipping-zones/delete.d.ts +24 -0
- package/dist/commands/shipping-zones/delete.js +30 -0
- package/dist/commands/shipping-zones/delete.js.map +1 -0
- package/dist/commands/shipping-zones/get.d.ts +24 -0
- package/dist/commands/shipping-zones/get.js +32 -0
- package/dist/commands/shipping-zones/get.js.map +1 -0
- package/dist/commands/shipping-zones/list.d.ts +28 -0
- package/dist/commands/shipping-zones/list.js +68 -0
- package/dist/commands/shipping-zones/list.js.map +1 -0
- package/dist/commands/shipping-zones/location-data.d.ts +18 -0
- package/dist/commands/shipping-zones/location-data.js +25 -0
- package/dist/commands/shipping-zones/location-data.js.map +1 -0
- package/dist/commands/shipping-zones/update.d.ts +28 -0
- package/dist/commands/shipping-zones/update.js +63 -0
- package/dist/commands/shipping-zones/update.js.map +1 -0
- package/dist/commands/store-menus/create.d.ts +22 -0
- package/dist/commands/store-menus/create.js +58 -0
- package/dist/commands/store-menus/create.js.map +1 -0
- package/dist/commands/store-menus/delete.d.ts +24 -0
- package/dist/commands/store-menus/delete.js +30 -0
- package/dist/commands/store-menus/delete.js.map +1 -0
- package/dist/commands/store-menus/get-by-ref.d.ts +22 -0
- package/dist/commands/store-menus/get-by-ref.js +30 -0
- package/dist/commands/store-menus/get-by-ref.js.map +1 -0
- package/dist/commands/store-menus/get.d.ts +25 -0
- package/dist/commands/store-menus/get.js +30 -0
- package/dist/commands/store-menus/get.js.map +1 -0
- package/dist/commands/store-menus/list.d.ts +23 -0
- package/dist/commands/store-menus/list.js +54 -0
- package/dist/commands/store-menus/list.js.map +1 -0
- package/dist/commands/store-menus/update.d.ts +28 -0
- package/dist/commands/store-menus/update.js +63 -0
- package/dist/commands/store-menus/update.js.map +1 -0
- package/dist/commands/store-pages/all.d.ts +20 -0
- package/dist/commands/store-pages/all.js +30 -0
- package/dist/commands/store-pages/all.js.map +1 -0
- package/dist/commands/store-pages/create.d.ts +26 -0
- package/dist/commands/store-pages/create.js +73 -0
- package/dist/commands/store-pages/create.js.map +1 -0
- package/dist/commands/store-pages/delete.d.ts +24 -0
- package/dist/commands/store-pages/delete.js +30 -0
- package/dist/commands/store-pages/delete.js.map +1 -0
- package/dist/commands/store-pages/duplicate.d.ts +24 -0
- package/dist/commands/store-pages/duplicate.js +33 -0
- package/dist/commands/store-pages/duplicate.js.map +1 -0
- package/dist/commands/store-pages/get.d.ts +24 -0
- package/dist/commands/store-pages/get.js +26 -0
- package/dist/commands/store-pages/get.js.map +1 -0
- package/dist/commands/store-pages/list.d.ts +24 -0
- package/dist/commands/store-pages/list.js +59 -0
- package/dist/commands/store-pages/list.js.map +1 -0
- package/dist/commands/store-pages/stats.d.ts +18 -0
- package/dist/commands/store-pages/stats.js +22 -0
- package/dist/commands/store-pages/stats.js.map +1 -0
- package/dist/commands/store-pages/update.d.ts +32 -0
- package/dist/commands/store-pages/update.js +78 -0
- package/dist/commands/store-pages/update.js.map +1 -0
- package/dist/commands/store-settings/get.d.ts +18 -0
- package/dist/commands/store-settings/get.js +23 -0
- package/dist/commands/store-settings/get.js.map +1 -0
- package/dist/commands/store-settings/update.d.ts +32 -0
- package/dist/commands/store-settings/update.js +88 -0
- package/dist/commands/store-settings/update.js.map +1 -0
- package/dist/commands/stores/current.d.ts +18 -0
- package/dist/commands/stores/current.js +29 -0
- package/dist/commands/stores/current.js.map +1 -0
- package/dist/commands/stores/info.d.ts +24 -0
- package/dist/commands/stores/info.js +29 -0
- package/dist/commands/stores/info.js.map +1 -0
- package/dist/commands/stores/list.d.ts +18 -0
- package/dist/commands/stores/list.js +25 -0
- package/dist/commands/stores/list.js.map +1 -0
- package/dist/commands/stores/switch.d.ts +24 -0
- package/dist/commands/stores/switch.js +37 -0
- package/dist/commands/stores/switch.js.map +1 -0
- package/dist/hooks/init.d.ts +3 -0
- package/dist/hooks/init.js +6 -0
- package/dist/hooks/init.js.map +1 -0
- package/dist/lib/api-client.d.ts +46 -0
- package/dist/lib/api-client.js +126 -0
- package/dist/lib/api-client.js.map +1 -0
- package/dist/lib/batch.d.ts +21 -0
- package/dist/lib/batch.js +56 -0
- package/dist/lib/batch.js.map +1 -0
- package/dist/lib/config.d.ts +44 -0
- package/dist/lib/config.js +200 -0
- package/dist/lib/config.js.map +1 -0
- package/dist/lib/errors.d.ts +30 -0
- package/dist/lib/errors.js +116 -0
- package/dist/lib/errors.js.map +1 -0
- package/dist/lib/output.d.ts +39 -0
- package/dist/lib/output.js +176 -0
- package/dist/lib/output.js.map +1 -0
- package/dist/lib/pagination.d.ts +8 -0
- package/dist/lib/pagination.js +25 -0
- package/dist/lib/pagination.js.map +1 -0
- package/dist/lib/stdin.d.ts +9 -0
- package/dist/lib/stdin.js +86 -0
- package/dist/lib/stdin.js.map +1 -0
- package/dist/lib/validators.d.ts +19 -0
- package/dist/lib/validators.js +499 -0
- package/dist/lib/validators.js.map +1 -0
- package/oclif.manifest.json +23299 -0
- package/package.json +68 -0
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { BaseCommand } from "../../base-command";
|
|
2
|
+
export default class ProductsGet 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
|
+
"include-variants": import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
|
|
13
|
+
"include-category": import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
|
|
14
|
+
"include-combinations": import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
|
|
15
|
+
"include-promotion": import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
|
|
16
|
+
"include-seo-metadata": import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
|
|
17
|
+
"store-id": import("@oclif/core/lib/interfaces").OptionFlag<number | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
18
|
+
"api-key": import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
19
|
+
"api-url": import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
20
|
+
output: import("@oclif/core/lib/interfaces").OptionFlag<string, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
21
|
+
quiet: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
|
|
22
|
+
"dry-run": import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
|
|
23
|
+
profile: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
24
|
+
full: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
|
|
25
|
+
fields: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
26
|
+
exclude: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
27
|
+
};
|
|
28
|
+
run(): Promise<void>;
|
|
29
|
+
}
|
|
@@ -0,0 +1,44 @@
|
|
|
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 ProductsGet extends base_command_1.BaseCommand {
|
|
7
|
+
async run() {
|
|
8
|
+
const storeId = this.requireStore();
|
|
9
|
+
const { args } = await this.parse(ProductsGet);
|
|
10
|
+
const params = {};
|
|
11
|
+
const flagMap = {
|
|
12
|
+
"include-variants": "include_variants",
|
|
13
|
+
"include-category": "include_category",
|
|
14
|
+
"include-combinations": "include_combinations",
|
|
15
|
+
"include-promotion": "include_promotion",
|
|
16
|
+
"include-seo-metadata": "include_seo_metadata",
|
|
17
|
+
};
|
|
18
|
+
for (const [flag, param] of Object.entries(flagMap)) {
|
|
19
|
+
const value = this.getFlag(flag);
|
|
20
|
+
if (value !== undefined)
|
|
21
|
+
params[param] = value;
|
|
22
|
+
}
|
|
23
|
+
const product = await this.apiClient.storeGet(`/products/${args.id}`, params);
|
|
24
|
+
this.outputResult((0, output_1.getEnvelope)("products", storeId, product));
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
ProductsGet.description = "Get a product by ID";
|
|
28
|
+
ProductsGet.examples = [
|
|
29
|
+
"ecomweb products get 42",
|
|
30
|
+
"ecomweb products get 42 --include-variants --include-category",
|
|
31
|
+
];
|
|
32
|
+
ProductsGet.args = {
|
|
33
|
+
id: core_1.Args.integer({ description: "Product ID", required: true }),
|
|
34
|
+
};
|
|
35
|
+
ProductsGet.flags = {
|
|
36
|
+
...base_command_1.BaseCommand.baseFlags,
|
|
37
|
+
"include-variants": core_1.Flags.boolean({ description: "Include product variants" }),
|
|
38
|
+
"include-category": core_1.Flags.boolean({ description: "Include category details" }),
|
|
39
|
+
"include-combinations": core_1.Flags.boolean({ description: "Include variant combinations" }),
|
|
40
|
+
"include-promotion": core_1.Flags.boolean({ description: "Include promotion details" }),
|
|
41
|
+
"include-seo-metadata": core_1.Flags.boolean({ description: "Include SEO metadata" }),
|
|
42
|
+
};
|
|
43
|
+
exports.default = ProductsGet;
|
|
44
|
+
//# sourceMappingURL=get.js.map
|
|
@@ -0,0 +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,OAAO,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;QACpC,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,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC;IAC/D,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"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { BaseCommand } from "../../base-command";
|
|
2
|
+
export default class ProductsList extends BaseCommand {
|
|
3
|
+
static description: string;
|
|
4
|
+
static examples: string[];
|
|
5
|
+
static flags: {
|
|
6
|
+
keyword: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
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
|
+
"inventory-status": import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
10
|
+
"sort-by": import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
11
|
+
"sort-order": import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
12
|
+
"include-counts": import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
|
|
13
|
+
"include-category": import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
|
|
14
|
+
"include-variants": import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
|
|
15
|
+
"include-combinations": import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
|
|
16
|
+
"include-promotion": import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
|
|
17
|
+
"min-price": import("@oclif/core/lib/interfaces").OptionFlag<number | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
18
|
+
"max-price": import("@oclif/core/lib/interfaces").OptionFlag<number | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
19
|
+
"external-id-pattern": import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
20
|
+
limit: import("@oclif/core/lib/interfaces").OptionFlag<number, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
21
|
+
offset: import("@oclif/core/lib/interfaces").OptionFlag<number, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
22
|
+
"store-id": import("@oclif/core/lib/interfaces").OptionFlag<number | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
23
|
+
"api-key": import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
24
|
+
"api-url": import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
25
|
+
output: import("@oclif/core/lib/interfaces").OptionFlag<string, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
26
|
+
quiet: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
|
|
27
|
+
"dry-run": import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
|
|
28
|
+
profile: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
29
|
+
full: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
|
|
30
|
+
fields: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
31
|
+
exclude: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
32
|
+
};
|
|
33
|
+
run(): Promise<void>;
|
|
34
|
+
}
|
|
@@ -0,0 +1,89 @@
|
|
|
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 ProductsList extends base_command_1.BaseCommand {
|
|
7
|
+
async run() {
|
|
8
|
+
const storeId = this.requireStore();
|
|
9
|
+
const params = {};
|
|
10
|
+
const flagMap = {
|
|
11
|
+
keyword: "keyword",
|
|
12
|
+
status: "status",
|
|
13
|
+
"category-id": "category_id",
|
|
14
|
+
"inventory-status": "inventory_status",
|
|
15
|
+
"sort-by": "sort_by",
|
|
16
|
+
"sort-order": "sort_order",
|
|
17
|
+
"include-counts": "include_counts",
|
|
18
|
+
"include-category": "include_category",
|
|
19
|
+
"include-variants": "include_variants",
|
|
20
|
+
"include-combinations": "include_combinations",
|
|
21
|
+
"include-promotion": "include_promotion",
|
|
22
|
+
"min-price": "min_price",
|
|
23
|
+
"max-price": "max_price",
|
|
24
|
+
"external-id-pattern": "external_id_pattern",
|
|
25
|
+
limit: "limit",
|
|
26
|
+
offset: "offset",
|
|
27
|
+
};
|
|
28
|
+
for (const [flag, param] of Object.entries(flagMap)) {
|
|
29
|
+
const value = this.getFlag(flag);
|
|
30
|
+
if (value !== undefined)
|
|
31
|
+
params[param] = value;
|
|
32
|
+
}
|
|
33
|
+
const response = await this.apiClient.listPaginated("/products", params);
|
|
34
|
+
this.outputResult((0, output_1.listEnvelope)("products", storeId, response.data, {
|
|
35
|
+
total: response.meta.total,
|
|
36
|
+
limit: response.meta.limit,
|
|
37
|
+
offset: response.meta.offset,
|
|
38
|
+
has_next: response.meta.hasNext,
|
|
39
|
+
}, {
|
|
40
|
+
hints: {
|
|
41
|
+
get_detail: "ecomweb products get <id>",
|
|
42
|
+
next_page: response.meta.hasNext
|
|
43
|
+
? `ecomweb products list --offset ${response.meta.offset + response.meta.limit}`
|
|
44
|
+
: undefined,
|
|
45
|
+
create: "ecomweb products create --stdin",
|
|
46
|
+
},
|
|
47
|
+
}));
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
ProductsList.description = "List products with pagination and filtering";
|
|
51
|
+
ProductsList.examples = [
|
|
52
|
+
"ecomweb products list",
|
|
53
|
+
"ecomweb products list --status active --category-id 3",
|
|
54
|
+
"ecomweb products list --keyword shoes --sort-by min_price --sort-order asc",
|
|
55
|
+
"ecomweb products list --inventory-status low_stock --include-variants",
|
|
56
|
+
];
|
|
57
|
+
ProductsList.flags = {
|
|
58
|
+
...base_command_1.BaseCommand.baseFlags,
|
|
59
|
+
keyword: core_1.Flags.string({ description: "Search by name/description" }),
|
|
60
|
+
status: core_1.Flags.string({
|
|
61
|
+
description: "Filter by status",
|
|
62
|
+
options: ["draft", "active", "unlisted"],
|
|
63
|
+
}),
|
|
64
|
+
"category-id": core_1.Flags.integer({ description: "Filter by category ID" }),
|
|
65
|
+
"inventory-status": core_1.Flags.string({
|
|
66
|
+
description: "Filter by inventory status",
|
|
67
|
+
options: ["in_stock", "low_stock", "out_of_stock"],
|
|
68
|
+
}),
|
|
69
|
+
"sort-by": core_1.Flags.string({
|
|
70
|
+
description: "Sort field",
|
|
71
|
+
options: ["id", "name", "status", "created_at", "updated_at", "category_id", "min_price", "max_price", "sold"],
|
|
72
|
+
}),
|
|
73
|
+
"sort-order": core_1.Flags.string({
|
|
74
|
+
description: "Sort direction",
|
|
75
|
+
options: ["asc", "desc"],
|
|
76
|
+
}),
|
|
77
|
+
"include-counts": core_1.Flags.boolean({ description: "Include variant/inventory counts" }),
|
|
78
|
+
"include-category": core_1.Flags.boolean({ description: "Include category details" }),
|
|
79
|
+
"include-variants": core_1.Flags.boolean({ description: "Include product variants" }),
|
|
80
|
+
"include-combinations": core_1.Flags.boolean({ description: "Include variant combinations" }),
|
|
81
|
+
"include-promotion": core_1.Flags.boolean({ description: "Include promotion details" }),
|
|
82
|
+
"min-price": core_1.Flags.integer({ description: "Filter by minimum price" }),
|
|
83
|
+
"max-price": core_1.Flags.integer({ description: "Filter by maximum price" }),
|
|
84
|
+
"external-id-pattern": core_1.Flags.string({ description: "Filter by external ID pattern" }),
|
|
85
|
+
limit: core_1.Flags.integer({ description: "Results per page", default: 20 }),
|
|
86
|
+
offset: core_1.Flags.integer({ description: "Offset for pagination", default: 0 }),
|
|
87
|
+
};
|
|
88
|
+
exports.default = ProductsList;
|
|
89
|
+
//# sourceMappingURL=list.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"list.js","sourceRoot":"","sources":["../../../src/commands/products/list.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { BaseCommand } from "../../base-command";
|
|
2
|
+
export default class ProductsSearch extends BaseCommand {
|
|
3
|
+
static description: string;
|
|
4
|
+
static examples: string[];
|
|
5
|
+
static flags: {
|
|
6
|
+
keyword: import("@oclif/core/lib/interfaces").OptionFlag<string, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
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
|
+
"inventory-status": import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
10
|
+
"sort-by": import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
11
|
+
"sort-order": import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
12
|
+
"min-price": import("@oclif/core/lib/interfaces").OptionFlag<number | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
13
|
+
"max-price": import("@oclif/core/lib/interfaces").OptionFlag<number | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
14
|
+
"include-variants": import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
|
|
15
|
+
"include-category": import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
|
|
16
|
+
limit: import("@oclif/core/lib/interfaces").OptionFlag<number, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
17
|
+
offset: import("@oclif/core/lib/interfaces").OptionFlag<number, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
18
|
+
"store-id": import("@oclif/core/lib/interfaces").OptionFlag<number | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
19
|
+
"api-key": import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
20
|
+
"api-url": import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
21
|
+
output: import("@oclif/core/lib/interfaces").OptionFlag<string, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
22
|
+
quiet: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
|
|
23
|
+
"dry-run": import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
|
|
24
|
+
profile: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
25
|
+
full: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
|
|
26
|
+
fields: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
27
|
+
exclude: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
28
|
+
};
|
|
29
|
+
run(): Promise<void>;
|
|
30
|
+
}
|
|
@@ -0,0 +1,72 @@
|
|
|
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 ProductsSearch extends base_command_1.BaseCommand {
|
|
7
|
+
async run() {
|
|
8
|
+
const storeId = this.requireStore();
|
|
9
|
+
const params = {};
|
|
10
|
+
const flagMap = {
|
|
11
|
+
keyword: "keyword",
|
|
12
|
+
status: "status",
|
|
13
|
+
"category-id": "category_id",
|
|
14
|
+
"inventory-status": "inventory_status",
|
|
15
|
+
"sort-by": "sort_by",
|
|
16
|
+
"sort-order": "sort_order",
|
|
17
|
+
"min-price": "min_price",
|
|
18
|
+
"max-price": "max_price",
|
|
19
|
+
"include-variants": "include_variants",
|
|
20
|
+
"include-category": "include_category",
|
|
21
|
+
limit: "limit",
|
|
22
|
+
offset: "offset",
|
|
23
|
+
};
|
|
24
|
+
for (const [flag, param] of Object.entries(flagMap)) {
|
|
25
|
+
const value = this.getFlag(flag);
|
|
26
|
+
if (value !== undefined)
|
|
27
|
+
params[param] = value;
|
|
28
|
+
}
|
|
29
|
+
const response = await this.apiClient.storeGet("/products/search", params);
|
|
30
|
+
const data = Array.isArray(response) ? response : response.data || [];
|
|
31
|
+
const total = Array.isArray(response) ? data.length : response.meta?.total || data.length;
|
|
32
|
+
this.outputResult((0, output_1.searchEnvelope)("products", storeId, params.keyword, data, {
|
|
33
|
+
found: total,
|
|
34
|
+
page: Math.floor((params.offset || 0) / (params.limit || 20)) + 1,
|
|
35
|
+
request_params: params,
|
|
36
|
+
}));
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
ProductsSearch.description = "Search products";
|
|
40
|
+
ProductsSearch.examples = [
|
|
41
|
+
"ecomweb products search --keyword shoes",
|
|
42
|
+
"ecomweb products search --keyword shoes --status active --category-id 3",
|
|
43
|
+
];
|
|
44
|
+
ProductsSearch.flags = {
|
|
45
|
+
...base_command_1.BaseCommand.baseFlags,
|
|
46
|
+
keyword: core_1.Flags.string({ description: "Search keyword", required: true }),
|
|
47
|
+
status: core_1.Flags.string({
|
|
48
|
+
description: "Filter by status",
|
|
49
|
+
options: ["draft", "active", "unlisted"],
|
|
50
|
+
}),
|
|
51
|
+
"category-id": core_1.Flags.integer({ description: "Filter by category ID" }),
|
|
52
|
+
"inventory-status": core_1.Flags.string({
|
|
53
|
+
description: "Filter by inventory status",
|
|
54
|
+
options: ["in_stock", "low_stock", "out_of_stock"],
|
|
55
|
+
}),
|
|
56
|
+
"sort-by": core_1.Flags.string({
|
|
57
|
+
description: "Sort field",
|
|
58
|
+
options: ["id", "name", "status", "created_at", "updated_at", "min_price", "max_price", "sold"],
|
|
59
|
+
}),
|
|
60
|
+
"sort-order": core_1.Flags.string({
|
|
61
|
+
description: "Sort direction",
|
|
62
|
+
options: ["asc", "desc"],
|
|
63
|
+
}),
|
|
64
|
+
"min-price": core_1.Flags.integer({ description: "Filter by minimum price" }),
|
|
65
|
+
"max-price": core_1.Flags.integer({ description: "Filter by maximum price" }),
|
|
66
|
+
"include-variants": core_1.Flags.boolean({ description: "Include product variants" }),
|
|
67
|
+
"include-category": core_1.Flags.boolean({ description: "Include category details" }),
|
|
68
|
+
limit: core_1.Flags.integer({ description: "Results per page", default: 20 }),
|
|
69
|
+
offset: core_1.Flags.integer({ description: "Offset for pagination", default: 0 }),
|
|
70
|
+
};
|
|
71
|
+
exports.default = ProductsSearch;
|
|
72
|
+
//# sourceMappingURL=search.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"search.js","sourceRoot":"","sources":["../../../src/commands/products/search.ts"],"names":[],"mappings":";;AAAA,sCAAoC;AACpC,qDAAiD;AACjD,6CAAkD;AAElD,MAAqB,cAAe,SAAQ,0BAAW;IAoCrD,KAAK,CAAC,GAAG;QACP,MAAM,OAAO,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;QAEpC,MAAM,MAAM,GAAwB,EAAE,CAAC;QACvC,MAAM,OAAO,GAA2B;YACtC,OAAO,EAAE,SAAS;YAClB,MAAM,EAAE,QAAQ;YAChB,aAAa,EAAE,aAAa;YAC5B,kBAAkB,EAAE,kBAAkB;YACtC,SAAS,EAAE,SAAS;YACpB,YAAY,EAAE,YAAY;YAC1B,WAAW,EAAE,WAAW;YACxB,WAAW,EAAE,WAAW;YACxB,kBAAkB,EAAE,kBAAkB;YACtC,kBAAkB,EAAE,kBAAkB;YACtC,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,QAAQ,CAAC,kBAAkB,EAAE,MAAM,CAAC,CAAC;QAE3E,MAAM,IAAI,GAAG,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,IAAI,EAAE,CAAC;QACtE,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,EAAE,KAAK,IAAI,IAAI,CAAC,MAAM,CAAC;QAE1F,IAAI,CAAC,YAAY,CACf,IAAA,uBAAc,EAAC,UAAU,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,IAAI,EAAE;YACxD,KAAK,EAAE,KAAK;YACZ,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,MAAM,IAAI,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC;YACjE,cAAc,EAAE,MAAM;SACvB,CAAC,CACH,CAAC;IACJ,CAAC;;AAvEM,0BAAW,GAAG,iBAAiB,CAAC;AAEhC,uBAAQ,GAAG;IAChB,yCAAyC;IACzC,yEAAyE;CAC1E,CAAC;AAEK,oBAAK,GAAG;IACb,GAAG,0BAAW,CAAC,SAAS;IACxB,OAAO,EAAE,YAAK,CAAC,MAAM,CAAC,EAAE,WAAW,EAAE,gBAAgB,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;IACxE,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,WAAW,EAAE,WAAW,EAAE,MAAM,CAAC;KAChG,CAAC;IACF,YAAY,EAAE,YAAK,CAAC,MAAM,CAAC;QACzB,WAAW,EAAE,gBAAgB;QAC7B,OAAO,EAAE,CAAC,KAAK,EAAE,MAAM,CAAC;KACzB,CAAC;IACF,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,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,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;kBAlCiB,cAAc"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { BaseCommand } from "../../base-command";
|
|
2
|
+
export default class ProductsStats extends BaseCommand {
|
|
3
|
+
static description: string;
|
|
4
|
+
static examples: string[];
|
|
5
|
+
static flags: {
|
|
6
|
+
"store-id": import("@oclif/core/lib/interfaces").OptionFlag<number | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
7
|
+
"api-key": import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
8
|
+
"api-url": import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
9
|
+
output: import("@oclif/core/lib/interfaces").OptionFlag<string, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
10
|
+
quiet: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
|
|
11
|
+
"dry-run": import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
|
|
12
|
+
profile: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
13
|
+
full: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
|
|
14
|
+
fields: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
15
|
+
exclude: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
16
|
+
};
|
|
17
|
+
run(): Promise<void>;
|
|
18
|
+
}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const base_command_1 = require("../../base-command");
|
|
4
|
+
class ProductsStats extends base_command_1.BaseCommand {
|
|
5
|
+
async run() {
|
|
6
|
+
const storeId = this.requireStore();
|
|
7
|
+
const stats = await this.apiClient.storeGet("/products/stats");
|
|
8
|
+
this.outputResult({
|
|
9
|
+
resource: "products",
|
|
10
|
+
action: "stats",
|
|
11
|
+
store_id: storeId,
|
|
12
|
+
data: stats,
|
|
13
|
+
});
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
ProductsStats.description = "Get product statistics";
|
|
17
|
+
ProductsStats.examples = ["ecomweb products stats"];
|
|
18
|
+
ProductsStats.flags = {
|
|
19
|
+
...base_command_1.BaseCommand.baseFlags,
|
|
20
|
+
};
|
|
21
|
+
exports.default = ProductsStats;
|
|
22
|
+
//# sourceMappingURL=stats.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"stats.js","sourceRoot":"","sources":["../../../src/commands/products/stats.ts"],"names":[],"mappings":";;AAAA,qDAAiD;AAEjD,MAAqB,aAAc,SAAQ,0BAAW;IASpD,KAAK,CAAC,GAAG;QACP,MAAM,OAAO,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;QAEpC,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAAC;QAE/D,IAAI,CAAC,YAAY,CAAC;YAChB,QAAQ,EAAE,UAAU;YACpB,MAAM,EAAE,OAAO;YACf,QAAQ,EAAE,OAAO;YACjB,IAAI,EAAE,KAAK;SACZ,CAAC,CAAC;IACL,CAAC;;AAnBM,yBAAW,GAAG,wBAAwB,CAAC;AAEvC,sBAAQ,GAAG,CAAC,wBAAwB,CAAC,CAAC;AAEtC,mBAAK,GAAG;IACb,GAAG,0BAAW,CAAC,SAAS;CACzB,CAAC;kBAPiB,aAAa"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { BaseCommand } from "../../base-command";
|
|
2
|
+
export default class ProductsUpdate 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
|
+
slug: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
16
|
+
description: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
17
|
+
"category-id": import("@oclif/core/lib/interfaces").OptionFlag<number | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
18
|
+
status: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
19
|
+
"variant-mode": import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
20
|
+
"external-id": import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
21
|
+
"replace-variants": import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
|
|
22
|
+
"store-id": import("@oclif/core/lib/interfaces").OptionFlag<number | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
23
|
+
"api-key": import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
24
|
+
"api-url": import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
25
|
+
output: import("@oclif/core/lib/interfaces").OptionFlag<string, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
26
|
+
quiet: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
|
|
27
|
+
"dry-run": import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
|
|
28
|
+
profile: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
29
|
+
full: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
|
|
30
|
+
fields: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
31
|
+
exclude: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
32
|
+
};
|
|
33
|
+
run(): Promise<void>;
|
|
34
|
+
}
|
|
@@ -0,0 +1,111 @@
|
|
|
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 ProductsUpdate extends base_command_1.BaseCommand {
|
|
8
|
+
async run() {
|
|
9
|
+
const storeId = this.requireStore();
|
|
10
|
+
const { args } = await this.parse(ProductsUpdate);
|
|
11
|
+
let body = await (0, stdin_1.getJsonInput)({
|
|
12
|
+
stdin: this.getFlag("stdin"),
|
|
13
|
+
file: this.getFlag("file"),
|
|
14
|
+
});
|
|
15
|
+
if (body && body.data && typeof body.data === "object") {
|
|
16
|
+
body = body.data;
|
|
17
|
+
}
|
|
18
|
+
if (!body) {
|
|
19
|
+
body = {};
|
|
20
|
+
if (this.getFlag("name"))
|
|
21
|
+
body.name = this.getFlag("name");
|
|
22
|
+
if (this.getFlag("slug"))
|
|
23
|
+
body.slug = this.getFlag("slug");
|
|
24
|
+
if (this.getFlag("description"))
|
|
25
|
+
body.description = this.getFlag("description");
|
|
26
|
+
if (this.getFlag("category-id") !== undefined)
|
|
27
|
+
body.category_id = this.getFlag("category-id");
|
|
28
|
+
if (this.getFlag("status"))
|
|
29
|
+
body.status = this.getFlag("status");
|
|
30
|
+
if (this.getFlag("variant-mode"))
|
|
31
|
+
body.variant_mode = this.getFlag("variant-mode");
|
|
32
|
+
if (this.getFlag("external-id"))
|
|
33
|
+
body.external_id = this.getFlag("external-id");
|
|
34
|
+
if (this.getFlag("replace-variants") !== undefined)
|
|
35
|
+
body.replace_variants = this.getFlag("replace-variants");
|
|
36
|
+
if (Object.keys(body).length === 0) {
|
|
37
|
+
this.outputJson({
|
|
38
|
+
error: {
|
|
39
|
+
code: "NO_INPUT",
|
|
40
|
+
message: "No input provided.",
|
|
41
|
+
hint: "Use --stdin, --file, or individual flags.",
|
|
42
|
+
},
|
|
43
|
+
});
|
|
44
|
+
this.exit(2);
|
|
45
|
+
return;
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
if (body.product_variants?.length) {
|
|
49
|
+
const needsCombinations = body.product_variants.some((v) => v.id > 0 && (!v.combinations || v.combinations.length === 0));
|
|
50
|
+
if (needsCombinations) {
|
|
51
|
+
const current = await this.apiClient.storeGet(`/products/${args.id}`, {
|
|
52
|
+
include_variants: true,
|
|
53
|
+
include_combinations: true,
|
|
54
|
+
});
|
|
55
|
+
const existingVariants = current.variants || [];
|
|
56
|
+
const comboMap = new Map();
|
|
57
|
+
for (const ev of existingVariants) {
|
|
58
|
+
if (ev.combinations?.length) {
|
|
59
|
+
comboMap.set(Number(ev.id), ev.combinations.map((c) => ({
|
|
60
|
+
option_id: c.option?.id ?? c.option_id,
|
|
61
|
+
option_value_id: c.value?.id ?? c.option_value_id,
|
|
62
|
+
})));
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
for (const v of body.product_variants) {
|
|
66
|
+
if (v.id > 0 && (!v.combinations || v.combinations.length === 0)) {
|
|
67
|
+
v.combinations = comboMap.get(Number(v.id)) || [];
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
if (this.isDryRun) {
|
|
73
|
+
this.outputResult((0, output_1.mutationEnvelope)("products", "update (dry-run)", storeId, { id: args.id, ...body }));
|
|
74
|
+
return;
|
|
75
|
+
}
|
|
76
|
+
const result = await this.apiClient.storePut(`/products/${args.id}`, body);
|
|
77
|
+
this.outputResult((0, output_1.mutationEnvelope)("products", "update", storeId, result, {
|
|
78
|
+
get: `ecomweb products get ${args.id}`,
|
|
79
|
+
}));
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
ProductsUpdate.description = "Update a product by ID";
|
|
83
|
+
ProductsUpdate.examples = [
|
|
84
|
+
`ecomweb products update 42 --stdin <<< '{"name":"Updated Product"}'`,
|
|
85
|
+
"ecomweb products update 42 --status active",
|
|
86
|
+
"ecomweb products get 42 | jq '.data' | ecomweb products update 42 --stdin",
|
|
87
|
+
];
|
|
88
|
+
ProductsUpdate.args = {
|
|
89
|
+
id: core_1.Args.integer({ description: "Product ID", required: true }),
|
|
90
|
+
};
|
|
91
|
+
ProductsUpdate.flags = {
|
|
92
|
+
...base_command_1.BaseCommand.baseFlags,
|
|
93
|
+
stdin: core_1.Flags.boolean({ description: "Read JSON body from stdin" }),
|
|
94
|
+
file: core_1.Flags.string({ description: "Read JSON body from file" }),
|
|
95
|
+
name: core_1.Flags.string({ description: "Product name" }),
|
|
96
|
+
slug: core_1.Flags.string({ description: "URL slug" }),
|
|
97
|
+
description: core_1.Flags.string({ description: "Product description" }),
|
|
98
|
+
"category-id": core_1.Flags.integer({ description: "Category ID" }),
|
|
99
|
+
status: core_1.Flags.string({
|
|
100
|
+
description: "Product status",
|
|
101
|
+
options: ["draft", "active", "unlisted"],
|
|
102
|
+
}),
|
|
103
|
+
"variant-mode": core_1.Flags.string({
|
|
104
|
+
description: "Variant mode",
|
|
105
|
+
options: ["simple", "variant"],
|
|
106
|
+
}),
|
|
107
|
+
"external-id": core_1.Flags.string({ description: "External integration ID" }),
|
|
108
|
+
"replace-variants": core_1.Flags.boolean({ description: "Replace all variants (remove unlisted ones)", allowNo: true }),
|
|
109
|
+
};
|
|
110
|
+
exports.default = ProductsUpdate;
|
|
111
|
+
//# sourceMappingURL=update.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"update.js","sourceRoot":"","sources":["../../../src/commands/products/update.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { BaseCommand } from "../../base-command";
|
|
2
|
+
export default class ProductsVariantOptions extends BaseCommand {
|
|
3
|
+
static description: string;
|
|
4
|
+
static examples: string[];
|
|
5
|
+
static flags: {
|
|
6
|
+
"include-values": import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
|
|
7
|
+
name: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
8
|
+
"option-id": import("@oclif/core/lib/interfaces").OptionFlag<number | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
9
|
+
"value-display": import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
10
|
+
"store-id": import("@oclif/core/lib/interfaces").OptionFlag<number | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
11
|
+
"api-key": import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
12
|
+
"api-url": import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
13
|
+
output: import("@oclif/core/lib/interfaces").OptionFlag<string, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
14
|
+
quiet: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
|
|
15
|
+
"dry-run": import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
|
|
16
|
+
profile: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
17
|
+
full: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
|
|
18
|
+
fields: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
19
|
+
exclude: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
20
|
+
};
|
|
21
|
+
run(): Promise<void>;
|
|
22
|
+
}
|
|
@@ -0,0 +1,48 @@
|
|
|
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
|
+
class ProductsVariantOptions extends base_command_1.BaseCommand {
|
|
6
|
+
async run() {
|
|
7
|
+
const storeId = this.requireStore();
|
|
8
|
+
const params = {};
|
|
9
|
+
if (this.getFlag("include-values"))
|
|
10
|
+
params.include_values = true;
|
|
11
|
+
if (this.getFlag("name"))
|
|
12
|
+
params.name = this.getFlag("name");
|
|
13
|
+
if (this.getFlag("option-id") !== undefined)
|
|
14
|
+
params.option_id = this.getFlag("option-id");
|
|
15
|
+
if (this.getFlag("value-display"))
|
|
16
|
+
params.value_display = this.getFlag("value-display");
|
|
17
|
+
const options = await this.apiClient.storeGet("/variant-options", params);
|
|
18
|
+
const data = Array.isArray(options) ? options : options.data || [];
|
|
19
|
+
this.outputResult({
|
|
20
|
+
resource: "variant-options",
|
|
21
|
+
action: "list",
|
|
22
|
+
store_id: storeId,
|
|
23
|
+
total_count: data.length,
|
|
24
|
+
data,
|
|
25
|
+
hints: {
|
|
26
|
+
usage: "Use option_id and option_value_id when creating product variants",
|
|
27
|
+
create_product: 'ecomweb products create --stdin <<< \'{"variant_mode":"variant","product_variants":[{"price":10,"combinations":[{"option_id":1,"option_value_id":2}]}]}\'',
|
|
28
|
+
update_product: "ecomweb products update <id> --stdin",
|
|
29
|
+
},
|
|
30
|
+
});
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
ProductsVariantOptions.description = "List variant options (e.g. Color, Size) and their values for the store";
|
|
34
|
+
ProductsVariantOptions.examples = [
|
|
35
|
+
"ecomweb products variant-options",
|
|
36
|
+
"ecomweb products variant-options --include-values",
|
|
37
|
+
"ecomweb products variant-options --name Color --include-values",
|
|
38
|
+
"ecomweb products variant-options --option-id 1 --include-values",
|
|
39
|
+
];
|
|
40
|
+
ProductsVariantOptions.flags = {
|
|
41
|
+
...base_command_1.BaseCommand.baseFlags,
|
|
42
|
+
"include-values": core_1.Flags.boolean({ description: "Include option values (e.g. Blue, Red for Color)" }),
|
|
43
|
+
name: core_1.Flags.string({ description: "Filter by option name" }),
|
|
44
|
+
"option-id": core_1.Flags.integer({ description: "Filter by option ID" }),
|
|
45
|
+
"value-display": core_1.Flags.string({ description: "Filter by value display name" }),
|
|
46
|
+
};
|
|
47
|
+
exports.default = ProductsVariantOptions;
|
|
48
|
+
//# sourceMappingURL=variant-options.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"variant-options.js","sourceRoot":"","sources":["../../../src/commands/products/variant-options.ts"],"names":[],"mappings":";;AAAA,sCAAoC;AACpC,qDAAiD;AAEjD,MAAqB,sBAAuB,SAAQ,0BAAW;IAkB7D,KAAK,CAAC,GAAG;QACP,MAAM,OAAO,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;QAEpC,MAAM,MAAM,GAAwB,EAAE,CAAC;QACvC,IAAI,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC;YAAE,MAAM,CAAC,cAAc,GAAG,IAAI,CAAC;QACjE,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC;YAAE,MAAM,CAAC,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QAC7D,IAAI,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,KAAK,SAAS;YAAE,MAAM,CAAC,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;QAC1F,IAAI,IAAI,CAAC,OAAO,CAAC,eAAe,CAAC;YAAE,MAAM,CAAC,aAAa,GAAG,IAAI,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC;QAExF,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,kBAAkB,EAAE,MAAM,CAAC,CAAC;QAE1E,MAAM,IAAI,GAAG,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,IAAI,EAAE,CAAC;QAEnE,IAAI,CAAC,YAAY,CAAC;YAChB,QAAQ,EAAE,iBAAiB;YAC3B,MAAM,EAAE,MAAM;YACd,QAAQ,EAAE,OAAO;YACjB,WAAW,EAAE,IAAI,CAAC,MAAM;YACxB,IAAI;YACJ,KAAK,EAAE;gBACL,KAAK,EAAE,kEAAkE;gBACzE,cAAc,EAAE,2JAA2J;gBAC3K,cAAc,EAAE,sCAAsC;aACvD;SACF,CAAC,CAAC;IACL,CAAC;;AA1CM,kCAAW,GAAG,wEAAwE,CAAC;AAEvF,+BAAQ,GAAG;IAChB,kCAAkC;IAClC,mDAAmD;IACnD,gEAAgE;IAChE,iEAAiE;CAClE,CAAC;AAEK,4BAAK,GAAG;IACb,GAAG,0BAAW,CAAC,SAAS;IACxB,gBAAgB,EAAE,YAAK,CAAC,OAAO,CAAC,EAAE,WAAW,EAAE,kDAAkD,EAAE,CAAC;IACpG,IAAI,EAAE,YAAK,CAAC,MAAM,CAAC,EAAE,WAAW,EAAE,uBAAuB,EAAE,CAAC;IAC5D,WAAW,EAAE,YAAK,CAAC,OAAO,CAAC,EAAE,WAAW,EAAE,qBAAqB,EAAE,CAAC;IAClE,eAAe,EAAE,YAAK,CAAC,MAAM,CAAC,EAAE,WAAW,EAAE,8BAA8B,EAAE,CAAC;CAC/E,CAAC;kBAhBiB,sBAAsB"}
|