@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,38 @@
|
|
|
1
|
+
import { BaseCommand } from "../../base-command";
|
|
2
|
+
export default class PromotionsUpdate 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
|
+
status: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
16
|
+
code: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
17
|
+
description: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
18
|
+
"start-at": import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
19
|
+
"end-at": import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
20
|
+
"discount-method": import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
21
|
+
"discount-value": import("@oclif/core/lib/interfaces").OptionFlag<number | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
22
|
+
"max-discount-amount": import("@oclif/core/lib/interfaces").OptionFlag<number | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
23
|
+
"usage-limit": import("@oclif/core/lib/interfaces").OptionFlag<number | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
24
|
+
"usage-limit-per-user": import("@oclif/core/lib/interfaces").OptionFlag<number | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
25
|
+
"checkout-suggestion-enabled": import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
|
|
26
|
+
"store-id": import("@oclif/core/lib/interfaces").OptionFlag<number | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
27
|
+
"api-key": import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
28
|
+
"api-url": import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
29
|
+
output: import("@oclif/core/lib/interfaces").OptionFlag<string, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
30
|
+
quiet: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
|
|
31
|
+
"dry-run": import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
|
|
32
|
+
profile: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
33
|
+
full: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
|
|
34
|
+
fields: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
35
|
+
exclude: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
36
|
+
};
|
|
37
|
+
run(): Promise<void>;
|
|
38
|
+
}
|
|
@@ -0,0 +1,94 @@
|
|
|
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 PromotionsUpdate extends base_command_1.BaseCommand {
|
|
8
|
+
async run() {
|
|
9
|
+
const storeId = this.requireStore();
|
|
10
|
+
const { args } = await this.parse(PromotionsUpdate);
|
|
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
|
+
const simpleFlags = {
|
|
21
|
+
name: "name",
|
|
22
|
+
status: "status",
|
|
23
|
+
code: "code",
|
|
24
|
+
description: "description",
|
|
25
|
+
"start-at": "start_at",
|
|
26
|
+
"end-at": "end_at",
|
|
27
|
+
"discount-method": "discount_method",
|
|
28
|
+
"discount-value": "discount_value",
|
|
29
|
+
"max-discount-amount": "max_discount_amount",
|
|
30
|
+
"usage-limit": "usage_limit",
|
|
31
|
+
"usage-limit-per-user": "usage_limit_per_user",
|
|
32
|
+
"checkout-suggestion-enabled": "checkout_suggestion_enabled",
|
|
33
|
+
};
|
|
34
|
+
for (const [flag, field] of Object.entries(simpleFlags)) {
|
|
35
|
+
const value = this.getFlag(flag);
|
|
36
|
+
if (value !== undefined)
|
|
37
|
+
body[field] = value;
|
|
38
|
+
}
|
|
39
|
+
if (Object.keys(body).length === 0) {
|
|
40
|
+
this.outputJson({
|
|
41
|
+
error: {
|
|
42
|
+
code: "NO_INPUT",
|
|
43
|
+
message: "No input provided.",
|
|
44
|
+
hint: "Use --stdin, --file, or individual flags.",
|
|
45
|
+
},
|
|
46
|
+
});
|
|
47
|
+
this.exit(2);
|
|
48
|
+
return;
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
if (this.isDryRun) {
|
|
52
|
+
this.outputResult((0, output_1.mutationEnvelope)("promotions", "update (dry-run)", storeId, { id: args.id, ...body }));
|
|
53
|
+
return;
|
|
54
|
+
}
|
|
55
|
+
const result = await this.apiClient.storePut(`/promotions/${args.id}`, body);
|
|
56
|
+
this.outputResult((0, output_1.mutationEnvelope)("promotions", "update", storeId, result, {
|
|
57
|
+
get: `ecomweb promotions get ${args.id}`,
|
|
58
|
+
}));
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
PromotionsUpdate.description = "Update a promotion by ID";
|
|
62
|
+
PromotionsUpdate.examples = [
|
|
63
|
+
`ecomweb promotions update 1 --stdin <<< '{"status":"ACTIVE"}'`,
|
|
64
|
+
"ecomweb promotions update 1 --status DISABLED",
|
|
65
|
+
"ecomweb promotions update 1 --discount-value 30",
|
|
66
|
+
];
|
|
67
|
+
PromotionsUpdate.args = {
|
|
68
|
+
id: core_1.Args.integer({ description: "Promotion ID", required: true }),
|
|
69
|
+
};
|
|
70
|
+
PromotionsUpdate.flags = {
|
|
71
|
+
...base_command_1.BaseCommand.baseFlags,
|
|
72
|
+
stdin: core_1.Flags.boolean({ description: "Read JSON body from stdin" }),
|
|
73
|
+
file: core_1.Flags.string({ description: "Read JSON body from file" }),
|
|
74
|
+
name: core_1.Flags.string({ description: "Promotion name" }),
|
|
75
|
+
status: core_1.Flags.string({
|
|
76
|
+
description: "Promotion status",
|
|
77
|
+
options: ["DRAFT", "ACTIVE", "EXPIRED", "DISABLED"],
|
|
78
|
+
}),
|
|
79
|
+
code: core_1.Flags.string({ description: "Promotion code" }),
|
|
80
|
+
description: core_1.Flags.string({ description: "Description" }),
|
|
81
|
+
"start-at": core_1.Flags.string({ description: "Start date (ISO datetime)" }),
|
|
82
|
+
"end-at": core_1.Flags.string({ description: "End date (ISO datetime)" }),
|
|
83
|
+
"discount-method": core_1.Flags.string({
|
|
84
|
+
description: "Discount method",
|
|
85
|
+
options: ["PERCENTAGE", "FIXED_AMOUNT"],
|
|
86
|
+
}),
|
|
87
|
+
"discount-value": core_1.Flags.integer({ description: "Discount value" }),
|
|
88
|
+
"max-discount-amount": core_1.Flags.integer({ description: "Max discount amount" }),
|
|
89
|
+
"usage-limit": core_1.Flags.integer({ description: "Total usage limit" }),
|
|
90
|
+
"usage-limit-per-user": core_1.Flags.integer({ description: "Per-user usage limit" }),
|
|
91
|
+
"checkout-suggestion-enabled": core_1.Flags.boolean({ description: "Enable checkout suggestion", allowNo: true }),
|
|
92
|
+
};
|
|
93
|
+
exports.default = PromotionsUpdate;
|
|
94
|
+
//# sourceMappingURL=update.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"update.js","sourceRoot":"","sources":["../../../src/commands/promotions/update.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { BaseCommand } from "../../base-command";
|
|
2
|
+
export default class ReviewsBulkImport extends BaseCommand {
|
|
3
|
+
static description: string;
|
|
4
|
+
static examples: string[];
|
|
5
|
+
static flags: {
|
|
6
|
+
stdin: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
|
|
7
|
+
file: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
8
|
+
"auto-approve": import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
|
|
9
|
+
"skip-duplicates": import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
|
|
10
|
+
"update-duplicates": import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
|
|
11
|
+
"update-stats": import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
|
|
12
|
+
"store-id": import("@oclif/core/lib/interfaces").OptionFlag<number | 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,82 @@
|
|
|
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
|
+
const errors_1 = require("../../lib/errors");
|
|
8
|
+
class ReviewsBulkImport extends base_command_1.BaseCommand {
|
|
9
|
+
async run() {
|
|
10
|
+
const storeId = this.requireStore();
|
|
11
|
+
const body = await (0, stdin_1.getJsonInput)({
|
|
12
|
+
stdin: this.getFlag("stdin"),
|
|
13
|
+
file: this.getFlag("file"),
|
|
14
|
+
});
|
|
15
|
+
if (!body) {
|
|
16
|
+
throw new errors_1.CliError("NO_INPUT", "No input provided.", errors_1.ExitCode.VALIDATION, {
|
|
17
|
+
hint: 'Use --stdin or --file with JSON containing a "reviews" array.',
|
|
18
|
+
});
|
|
19
|
+
}
|
|
20
|
+
const reviews = body.reviews || (Array.isArray(body) ? body : null);
|
|
21
|
+
if (!Array.isArray(reviews) || reviews.length === 0) {
|
|
22
|
+
throw new errors_1.CliError("INVALID_INPUT", 'Input must contain a "reviews" array with at least one review.', errors_1.ExitCode.VALIDATION, {
|
|
23
|
+
hint: 'Expected shape: {"reviews":[...], "options":{...}} or a JSON array of reviews.',
|
|
24
|
+
});
|
|
25
|
+
}
|
|
26
|
+
const payload = {
|
|
27
|
+
reviews,
|
|
28
|
+
options: {
|
|
29
|
+
auto_approve: this.getFlag("auto-approve"),
|
|
30
|
+
skip_duplicates: this.getFlag("skip-duplicates"),
|
|
31
|
+
update_duplicates: this.getFlag("update-duplicates"),
|
|
32
|
+
update_stats: this.getFlag("update-stats"),
|
|
33
|
+
...(body.options || {}),
|
|
34
|
+
},
|
|
35
|
+
};
|
|
36
|
+
if (this.isDryRun) {
|
|
37
|
+
this.outputResult((0, output_1.mutationEnvelope)("reviews", "bulk-import (dry-run)", storeId, {
|
|
38
|
+
review_count: payload.reviews.length,
|
|
39
|
+
options: payload.options,
|
|
40
|
+
}));
|
|
41
|
+
return;
|
|
42
|
+
}
|
|
43
|
+
const result = await this.apiClient.storePost("/reviews/bulk-import", payload);
|
|
44
|
+
this.outputResult((0, output_1.mutationEnvelope)("reviews", "bulk-import", storeId, result, {
|
|
45
|
+
list: "ecomweb reviews list",
|
|
46
|
+
stats: "ecomweb reviews stats",
|
|
47
|
+
}));
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
ReviewsBulkImport.description = "Bulk import product reviews from external sources (Shopee, etc.)";
|
|
51
|
+
ReviewsBulkImport.examples = [
|
|
52
|
+
"ecomweb reviews bulk-import --file shopee-reviews.json",
|
|
53
|
+
`ecomweb reviews bulk-import --stdin <<< '{"reviews":[{"product_external_id":"abc","external_review_id":"r1","rating":5,"content":"Great!","reviewer_name":"John"}]}'`,
|
|
54
|
+
"ecomweb reviews bulk-import --file reviews.json --no-auto-approve",
|
|
55
|
+
"ecomweb reviews bulk-import --file reviews.json --no-skip-duplicates --update-duplicates",
|
|
56
|
+
];
|
|
57
|
+
ReviewsBulkImport.flags = {
|
|
58
|
+
...base_command_1.BaseCommand.baseFlags,
|
|
59
|
+
stdin: core_1.Flags.boolean({ description: "Read JSON body from stdin" }),
|
|
60
|
+
file: core_1.Flags.string({ description: "Read JSON body from file" }),
|
|
61
|
+
"auto-approve": core_1.Flags.boolean({
|
|
62
|
+
description: "Auto-approve imported reviews (default: true)",
|
|
63
|
+
default: true,
|
|
64
|
+
allowNo: true,
|
|
65
|
+
}),
|
|
66
|
+
"skip-duplicates": core_1.Flags.boolean({
|
|
67
|
+
description: "Skip reviews with duplicate external_review_id (default: true)",
|
|
68
|
+
default: true,
|
|
69
|
+
allowNo: true,
|
|
70
|
+
}),
|
|
71
|
+
"update-duplicates": core_1.Flags.boolean({
|
|
72
|
+
description: "Update existing duplicate reviews (default: false)",
|
|
73
|
+
default: false,
|
|
74
|
+
}),
|
|
75
|
+
"update-stats": core_1.Flags.boolean({
|
|
76
|
+
description: "Update product review stats after import (default: true)",
|
|
77
|
+
default: true,
|
|
78
|
+
allowNo: true,
|
|
79
|
+
}),
|
|
80
|
+
};
|
|
81
|
+
exports.default = ReviewsBulkImport;
|
|
82
|
+
//# sourceMappingURL=bulk-import.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bulk-import.js","sourceRoot":"","sources":["../../../src/commands/reviews/bulk-import.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { BaseCommand } from "../../base-command";
|
|
2
|
+
export default class ReviewsBulkModerate extends BaseCommand {
|
|
3
|
+
static description: string;
|
|
4
|
+
static examples: string[];
|
|
5
|
+
static flags: {
|
|
6
|
+
stdin: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
|
|
7
|
+
file: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
8
|
+
ids: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
9
|
+
action: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
10
|
+
reason: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
11
|
+
notes: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
12
|
+
"store-id": import("@oclif/core/lib/interfaces").OptionFlag<number | 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,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
|
+
const errors_1 = require("../../lib/errors");
|
|
8
|
+
class ReviewsBulkModerate extends base_command_1.BaseCommand {
|
|
9
|
+
async run() {
|
|
10
|
+
const storeId = this.requireStore();
|
|
11
|
+
let body = await (0, stdin_1.getJsonInput)({
|
|
12
|
+
stdin: this.getFlag("stdin"),
|
|
13
|
+
file: this.getFlag("file"),
|
|
14
|
+
});
|
|
15
|
+
if (!body) {
|
|
16
|
+
const ids = this.getFlag("ids");
|
|
17
|
+
const action = this.getFlag("action");
|
|
18
|
+
if (!ids || !action) {
|
|
19
|
+
throw new errors_1.CliError("NO_INPUT", "No input provided.", errors_1.ExitCode.VALIDATION, {
|
|
20
|
+
hint: "Use --stdin/--file, or --ids and --action flags.",
|
|
21
|
+
});
|
|
22
|
+
}
|
|
23
|
+
body = {
|
|
24
|
+
review_ids: ids.split(",").map((s) => s.trim()),
|
|
25
|
+
action,
|
|
26
|
+
...(this.getFlag("reason") && {
|
|
27
|
+
rejected_reason: this.getFlag("reason"),
|
|
28
|
+
}),
|
|
29
|
+
...(this.getFlag("notes") && {
|
|
30
|
+
moderation_notes: this.getFlag("notes"),
|
|
31
|
+
}),
|
|
32
|
+
};
|
|
33
|
+
}
|
|
34
|
+
if (this.isDryRun) {
|
|
35
|
+
this.outputResult((0, output_1.mutationEnvelope)("reviews", "bulk-moderate (dry-run)", storeId, body));
|
|
36
|
+
return;
|
|
37
|
+
}
|
|
38
|
+
const result = await this.apiClient.storePut("/reviews/bulk-moderate", body);
|
|
39
|
+
this.outputResult((0, output_1.mutationEnvelope)("reviews", "bulk-moderate", storeId, result, {
|
|
40
|
+
list: "ecomweb reviews list",
|
|
41
|
+
stats: "ecomweb reviews stats",
|
|
42
|
+
}));
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
ReviewsBulkModerate.description = "Bulk approve or reject multiple reviews";
|
|
46
|
+
ReviewsBulkModerate.examples = [
|
|
47
|
+
"ecomweb reviews bulk-moderate --action APPROVE --ids id1,id2,id3",
|
|
48
|
+
'ecomweb reviews bulk-moderate --action REJECT --ids id1,id2 --reason "Spam content"',
|
|
49
|
+
`ecomweb reviews bulk-moderate --stdin <<< '{"review_ids":["id1","id2"],"action":"APPROVE"}'`,
|
|
50
|
+
];
|
|
51
|
+
ReviewsBulkModerate.flags = {
|
|
52
|
+
...base_command_1.BaseCommand.baseFlags,
|
|
53
|
+
stdin: core_1.Flags.boolean({ description: "Read JSON body from stdin" }),
|
|
54
|
+
file: core_1.Flags.string({ description: "Read JSON body from file" }),
|
|
55
|
+
ids: core_1.Flags.string({ description: "Comma-separated review IDs" }),
|
|
56
|
+
action: core_1.Flags.string({
|
|
57
|
+
description: "Moderation action",
|
|
58
|
+
options: ["APPROVE", "REJECT"],
|
|
59
|
+
}),
|
|
60
|
+
reason: core_1.Flags.string({
|
|
61
|
+
description: "Rejection reason (for REJECT action)",
|
|
62
|
+
}),
|
|
63
|
+
notes: core_1.Flags.string({ description: "Moderation notes" }),
|
|
64
|
+
};
|
|
65
|
+
exports.default = ReviewsBulkModerate;
|
|
66
|
+
//# sourceMappingURL=bulk-moderate.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bulk-moderate.js","sourceRoot":"","sources":["../../../src/commands/reviews/bulk-moderate.ts"],"names":[],"mappings":";;AAAA,sCAAoC;AACpC,qDAAiD;AACjD,6CAAoD;AACpD,2CAA+C;AAC/C,6CAAsD;AAEtD,MAAqB,mBAAoB,SAAQ,0BAAW;IAwB1D,KAAK,CAAC,GAAG;QACP,MAAM,OAAO,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;QAEpC,IAAI,IAAI,GAAG,MAAM,IAAA,oBAAY,EAAC;YAC5B,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC;YAC5B,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC;SAC3B,CAAC,CAAC;QAEH,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;YAChC,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;YACtC,IAAI,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC;gBACpB,MAAM,IAAI,iBAAQ,CAChB,UAAU,EACV,oBAAoB,EACpB,iBAAQ,CAAC,UAAU,EACnB;oBACE,IAAI,EAAE,kDAAkD;iBACzD,CACF,CAAC;YACJ,CAAC;YACD,IAAI,GAAG;gBACL,UAAU,EAAE,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAS,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;gBACvD,MAAM;gBACN,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI;oBAC5B,eAAe,EAAE,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC;iBACxC,CAAC;gBACF,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI;oBAC3B,gBAAgB,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC;iBACxC,CAAC;aACH,CAAC;QACJ,CAAC;QAED,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAClB,IAAI,CAAC,YAAY,CACf,IAAA,yBAAgB,EACd,SAAS,EACT,yBAAyB,EACzB,OAAO,EACP,IAAI,CACL,CACF,CAAC;YACF,OAAO;QACT,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,QAAQ,CAC1C,wBAAwB,EACxB,IAAI,CACL,CAAC;QAEF,IAAI,CAAC,YAAY,CACf,IAAA,yBAAgB,EAAC,SAAS,EAAE,eAAe,EAAE,OAAO,EAAE,MAAM,EAAE;YAC5D,IAAI,EAAE,sBAAsB;YAC5B,KAAK,EAAE,uBAAuB;SAC/B,CAAC,CACH,CAAC;IACJ,CAAC;;AA/EM,+BAAW,GAAG,yCAAyC,CAAC;AAExD,4BAAQ,GAAG;IAChB,kEAAkE;IAClE,qFAAqF;IACrF,6FAA6F;CAC9F,CAAC;AAEK,yBAAK,GAAG;IACb,GAAG,0BAAW,CAAC,SAAS;IACxB,KAAK,EAAE,YAAK,CAAC,OAAO,CAAC,EAAE,WAAW,EAAE,2BAA2B,EAAE,CAAC;IAClE,IAAI,EAAE,YAAK,CAAC,MAAM,CAAC,EAAE,WAAW,EAAE,0BAA0B,EAAE,CAAC;IAC/D,GAAG,EAAE,YAAK,CAAC,MAAM,CAAC,EAAE,WAAW,EAAE,4BAA4B,EAAE,CAAC;IAChE,MAAM,EAAE,YAAK,CAAC,MAAM,CAAC;QACnB,WAAW,EAAE,mBAAmB;QAChC,OAAO,EAAE,CAAC,SAAS,EAAE,QAAQ,CAAC;KAC/B,CAAC;IACF,MAAM,EAAE,YAAK,CAAC,MAAM,CAAC;QACnB,WAAW,EAAE,sCAAsC;KACpD,CAAC;IACF,KAAK,EAAE,YAAK,CAAC,MAAM,CAAC,EAAE,WAAW,EAAE,kBAAkB,EAAE,CAAC;CACzD,CAAC;kBAtBiB,mBAAmB"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { BaseCommand } from "../../base-command";
|
|
2
|
+
export default class ReviewsCreate extends BaseCommand {
|
|
3
|
+
static description: string;
|
|
4
|
+
static examples: string[];
|
|
5
|
+
static flags: {
|
|
6
|
+
stdin: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
|
|
7
|
+
file: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
8
|
+
"product-id": import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
9
|
+
"product-name": import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
10
|
+
rating: import("@oclif/core/lib/interfaces").OptionFlag<number | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
11
|
+
title: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
12
|
+
content: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
13
|
+
"reviewer-name": import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
14
|
+
"reviewer-email": import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
15
|
+
status: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
16
|
+
"review-date": import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
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,84 @@
|
|
|
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 ReviewsCreate extends base_command_1.BaseCommand {
|
|
8
|
+
async run() {
|
|
9
|
+
const storeId = 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("product-id"))
|
|
17
|
+
body.product_id = Number(this.getFlag("product-id"));
|
|
18
|
+
if (this.getFlag("product-name"))
|
|
19
|
+
body.product_name = this.getFlag("product-name");
|
|
20
|
+
if (this.getFlag("rating") !== undefined)
|
|
21
|
+
body.rating = this.getFlag("rating");
|
|
22
|
+
if (this.getFlag("title"))
|
|
23
|
+
body.title = this.getFlag("title");
|
|
24
|
+
if (this.getFlag("content"))
|
|
25
|
+
body.content = this.getFlag("content");
|
|
26
|
+
if (this.getFlag("reviewer-name"))
|
|
27
|
+
body.reviewer_name = this.getFlag("reviewer-name");
|
|
28
|
+
if (this.getFlag("reviewer-email"))
|
|
29
|
+
body.reviewer_email = this.getFlag("reviewer-email");
|
|
30
|
+
if (this.getFlag("status"))
|
|
31
|
+
body.status = this.getFlag("status");
|
|
32
|
+
if (this.getFlag("review-date"))
|
|
33
|
+
body.review_date = this.getFlag("review-date");
|
|
34
|
+
if (Object.keys(body).length === 0) {
|
|
35
|
+
this.outputJson({
|
|
36
|
+
error: {
|
|
37
|
+
code: "NO_INPUT",
|
|
38
|
+
message: "No input provided.",
|
|
39
|
+
hint: "Use --stdin, --file, or individual flags (--product-id, --rating, --content, etc.).",
|
|
40
|
+
},
|
|
41
|
+
});
|
|
42
|
+
this.exit(2);
|
|
43
|
+
return;
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
if (this.isDryRun) {
|
|
47
|
+
this.outputResult((0, output_1.mutationEnvelope)("reviews", "create (dry-run)", storeId, body));
|
|
48
|
+
return;
|
|
49
|
+
}
|
|
50
|
+
const result = await this.apiClient.storePost("/reviews", body);
|
|
51
|
+
this.outputResult((0, output_1.mutationEnvelope)("reviews", "create", storeId, result, {
|
|
52
|
+
get: `ecomweb reviews get ${result.id}`,
|
|
53
|
+
update: `ecomweb reviews update ${result.id} --stdin`,
|
|
54
|
+
}));
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
ReviewsCreate.description = "Create a product review";
|
|
58
|
+
ReviewsCreate.examples = [
|
|
59
|
+
`ecomweb reviews create --stdin <<< '{"product_id":1,"product_name":"Widget","rating":5,"title":"Great!","content":"Love it","reviewer_name":"John","reviewer_email":"john@example.com"}'`,
|
|
60
|
+
"ecomweb reviews create --product-id 1 --rating 5 --title 'Great!' --content 'Love it' --reviewer-name John --reviewer-email john@example.com",
|
|
61
|
+
"ecomweb reviews create --product-id 1 --rating 5 --content 'Love it' --reviewer-name John --reviewer-email john@example.com --review-date 2025-01-15T10:00:00Z",
|
|
62
|
+
"ecomweb reviews create --file review.json",
|
|
63
|
+
];
|
|
64
|
+
ReviewsCreate.flags = {
|
|
65
|
+
...base_command_1.BaseCommand.baseFlags,
|
|
66
|
+
stdin: core_1.Flags.boolean({ description: "Read JSON body from stdin" }),
|
|
67
|
+
file: core_1.Flags.string({ description: "Read JSON body from file" }),
|
|
68
|
+
"product-id": core_1.Flags.string({ description: "Product ID" }),
|
|
69
|
+
"product-name": core_1.Flags.string({ description: "Product name" }),
|
|
70
|
+
rating: core_1.Flags.integer({ description: "Rating (1-5)" }),
|
|
71
|
+
title: core_1.Flags.string({ description: "Review title" }),
|
|
72
|
+
content: core_1.Flags.string({ description: "Review content" }),
|
|
73
|
+
"reviewer-name": core_1.Flags.string({ description: "Reviewer name" }),
|
|
74
|
+
"reviewer-email": core_1.Flags.string({ description: "Reviewer email" }),
|
|
75
|
+
status: core_1.Flags.string({
|
|
76
|
+
description: "Review status",
|
|
77
|
+
options: ["PENDING", "APPROVED", "REJECTED", "HIDDEN"],
|
|
78
|
+
}),
|
|
79
|
+
"review-date": core_1.Flags.string({
|
|
80
|
+
description: "Review date (ISO 8601 string, e.g. 2025-01-15T10:00:00Z)",
|
|
81
|
+
}),
|
|
82
|
+
};
|
|
83
|
+
exports.default = ReviewsCreate;
|
|
84
|
+
//# sourceMappingURL=create.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"create.js","sourceRoot":"","sources":["../../../src/commands/reviews/create.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { BaseCommand } from "../../base-command";
|
|
2
|
+
export default class ReviewsDeleteReply extends BaseCommand {
|
|
3
|
+
static description: string;
|
|
4
|
+
static examples: string[];
|
|
5
|
+
static args: {
|
|
6
|
+
reviewId: import("@oclif/core/lib/interfaces").Arg<string, Record<string, unknown>>;
|
|
7
|
+
replyId: import("@oclif/core/lib/interfaces").Arg<string, Record<string, unknown>>;
|
|
8
|
+
};
|
|
9
|
+
static flags: {
|
|
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,31 @@
|
|
|
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 ReviewsDeleteReply extends base_command_1.BaseCommand {
|
|
7
|
+
async run() {
|
|
8
|
+
const storeId = this.requireStore();
|
|
9
|
+
const { args } = await this.parse(ReviewsDeleteReply);
|
|
10
|
+
if (this.isDryRun) {
|
|
11
|
+
this.outputResult((0, output_1.mutationEnvelope)("reviews", "reply-delete (dry-run)", storeId, { review_id: args.reviewId, reply_id: args.replyId }));
|
|
12
|
+
return;
|
|
13
|
+
}
|
|
14
|
+
const result = await this.apiClient.storeDelete(`/reviews/${args.reviewId}/replies/${args.replyId}`);
|
|
15
|
+
this.outputResult((0, output_1.mutationEnvelope)("reviews", "reply-delete", storeId, result || { review_id: args.reviewId, reply_id: args.replyId, deleted: true }));
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
ReviewsDeleteReply.description = "Delete a reply to a review (soft delete)";
|
|
19
|
+
ReviewsDeleteReply.examples = [
|
|
20
|
+
"ecomweb reviews delete-reply abc-123 reply-456",
|
|
21
|
+
"ecomweb reviews delete-reply abc-123 reply-456 --dry-run",
|
|
22
|
+
];
|
|
23
|
+
ReviewsDeleteReply.args = {
|
|
24
|
+
reviewId: core_1.Args.string({ description: "Review ID", required: true }),
|
|
25
|
+
replyId: core_1.Args.string({ description: "Reply ID", required: true }),
|
|
26
|
+
};
|
|
27
|
+
ReviewsDeleteReply.flags = {
|
|
28
|
+
...base_command_1.BaseCommand.baseFlags,
|
|
29
|
+
};
|
|
30
|
+
exports.default = ReviewsDeleteReply;
|
|
31
|
+
//# sourceMappingURL=delete-reply.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"delete-reply.js","sourceRoot":"","sources":["../../../src/commands/reviews/delete-reply.ts"],"names":[],"mappings":";;AAAA,sCAAmC;AACnC,qDAAiD;AACjD,6CAAoD;AAEpD,MAAqB,kBAAmB,SAAQ,0BAAW;IAiBzD,KAAK,CAAC,GAAG;QACP,MAAM,OAAO,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;QACpC,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC;QAEtD,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAClB,IAAI,CAAC,YAAY,CAAC,IAAA,yBAAgB,EAAC,SAAS,EAAE,wBAAwB,EAAE,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,CAAC,QAAQ,EAAE,QAAQ,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;YACxI,OAAO;QACT,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,YAAY,IAAI,CAAC,QAAQ,YAAY,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;QAErG,IAAI,CAAC,YAAY,CACf,IAAA,yBAAgB,EAAC,SAAS,EAAE,cAAc,EAAE,OAAO,EAAE,MAAM,IAAI,EAAE,SAAS,EAAE,IAAI,CAAC,QAAQ,EAAE,QAAQ,EAAE,IAAI,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CACpI,CAAC;IACJ,CAAC;;AA9BM,8BAAW,GAAG,0CAA0C,CAAC;AAEzD,2BAAQ,GAAG;IAChB,gDAAgD;IAChD,0DAA0D;CAC3D,CAAC;AAEK,uBAAI,GAAG;IACZ,QAAQ,EAAE,WAAI,CAAC,MAAM,CAAC,EAAE,WAAW,EAAE,WAAW,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;IACnE,OAAO,EAAE,WAAI,CAAC,MAAM,CAAC,EAAE,WAAW,EAAE,UAAU,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;CAClE,CAAC;AAEK,wBAAK,GAAG;IACb,GAAG,0BAAW,CAAC,SAAS;CACzB,CAAC;kBAfiB,kBAAkB"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { BaseCommand } from "../../base-command";
|
|
2
|
+
export default class ReviewsDelete extends BaseCommand {
|
|
3
|
+
static description: string;
|
|
4
|
+
static examples: string[];
|
|
5
|
+
static args: {
|
|
6
|
+
id: import("@oclif/core/lib/interfaces").Arg<string, Record<string, unknown>>;
|
|
7
|
+
};
|
|
8
|
+
static flags: {
|
|
9
|
+
"store-id": import("@oclif/core/lib/interfaces").OptionFlag<number | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
10
|
+
"api-key": import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
11
|
+
"api-url": import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
12
|
+
output: import("@oclif/core/lib/interfaces").OptionFlag<string, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
13
|
+
quiet: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
|
|
14
|
+
"dry-run": import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
|
|
15
|
+
profile: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
16
|
+
full: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
|
|
17
|
+
fields: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
18
|
+
exclude: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
19
|
+
};
|
|
20
|
+
run(): Promise<void>;
|
|
21
|
+
}
|
|
@@ -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 ReviewsDelete extends base_command_1.BaseCommand {
|
|
7
|
+
async run() {
|
|
8
|
+
const storeId = this.requireStore();
|
|
9
|
+
const { args } = await this.parse(ReviewsDelete);
|
|
10
|
+
if (this.isDryRun) {
|
|
11
|
+
this.outputResult((0, output_1.mutationEnvelope)("reviews", "delete (dry-run)", storeId, { id: args.id }));
|
|
12
|
+
return;
|
|
13
|
+
}
|
|
14
|
+
const result = await this.apiClient.storeDelete(`/reviews/${args.id}`);
|
|
15
|
+
this.outputResult((0, output_1.mutationEnvelope)("reviews", "delete", storeId, result || { id: args.id, deleted: true }));
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
ReviewsDelete.description = "Delete a product review (soft delete)";
|
|
19
|
+
ReviewsDelete.examples = [
|
|
20
|
+
"ecomweb reviews delete abc-123",
|
|
21
|
+
"ecomweb reviews delete abc-123 --dry-run",
|
|
22
|
+
];
|
|
23
|
+
ReviewsDelete.args = {
|
|
24
|
+
id: core_1.Args.string({ description: "Review ID", required: true }),
|
|
25
|
+
};
|
|
26
|
+
ReviewsDelete.flags = {
|
|
27
|
+
...base_command_1.BaseCommand.baseFlags,
|
|
28
|
+
};
|
|
29
|
+
exports.default = ReviewsDelete;
|
|
30
|
+
//# sourceMappingURL=delete.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"delete.js","sourceRoot":"","sources":["../../../src/commands/reviews/delete.ts"],"names":[],"mappings":";;AAAA,sCAAmC;AACnC,qDAAiD;AACjD,6CAAoD;AAEpD,MAAqB,aAAc,SAAQ,0BAAW;IAgBpD,KAAK,CAAC,GAAG;QACP,MAAM,OAAO,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;QACpC,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;QAEjD,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAClB,IAAI,CAAC,YAAY,CAAC,IAAA,yBAAgB,EAAC,SAAS,EAAE,kBAAkB,EAAE,OAAO,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;YAC7F,OAAO;QACT,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,YAAY,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;QAEvE,IAAI,CAAC,YAAY,CACf,IAAA,yBAAgB,EAAC,SAAS,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,IAAI,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CACzF,CAAC;IACJ,CAAC;;AA7BM,yBAAW,GAAG,uCAAuC,CAAC;AAEtD,sBAAQ,GAAG;IAChB,gCAAgC;IAChC,0CAA0C;CAC3C,CAAC;AAEK,kBAAI,GAAG;IACZ,EAAE,EAAE,WAAI,CAAC,MAAM,CAAC,EAAE,WAAW,EAAE,WAAW,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;CAC9D,CAAC;AAEK,mBAAK,GAAG;IACb,GAAG,0BAAW,CAAC,SAAS;CACzB,CAAC;kBAdiB,aAAa"}
|