@unchainedshop/api 4.0.0-rc.3 → 4.0.0-rc.4
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/lib/locale-context.d.ts.map +1 -1
- package/lib/locale-context.js +2 -2
- package/lib/locale-context.js.map +1 -1
- package/lib/mcp/index.d.ts.map +1 -1
- package/lib/mcp/index.js +54 -6
- package/lib/mcp/index.js.map +1 -1
- package/lib/mcp/tools/assortment/addAssortmentFilterHandler.d.ts +28 -0
- package/lib/mcp/tools/assortment/addAssortmentFilterHandler.d.ts.map +1 -0
- package/lib/mcp/tools/assortment/addAssortmentFilterHandler.js +57 -0
- package/lib/mcp/tools/assortment/addAssortmentFilterHandler.js.map +1 -0
- package/lib/mcp/tools/assortment/addAssortmentLinkHandler.d.ts +28 -0
- package/lib/mcp/tools/assortment/addAssortmentLinkHandler.d.ts.map +1 -0
- package/lib/mcp/tools/assortment/addAssortmentLinkHandler.js +56 -0
- package/lib/mcp/tools/assortment/addAssortmentLinkHandler.js.map +1 -0
- package/lib/mcp/tools/assortment/addAssortmentMediaUploadHandler.d.ts +28 -0
- package/lib/mcp/tools/assortment/addAssortmentMediaUploadHandler.d.ts.map +1 -0
- package/lib/mcp/tools/assortment/addAssortmentMediaUploadHandler.js +62 -0
- package/lib/mcp/tools/assortment/addAssortmentMediaUploadHandler.js.map +1 -0
- package/lib/mcp/tools/assortment/addAssortmentProductHandler.d.ts +28 -0
- package/lib/mcp/tools/assortment/addAssortmentProductHandler.d.ts.map +1 -0
- package/lib/mcp/tools/assortment/addAssortmentProductHandler.js +53 -0
- package/lib/mcp/tools/assortment/addAssortmentProductHandler.js.map +1 -0
- package/lib/mcp/tools/assortment/assortmentChildrenHandler.d.ts +24 -0
- package/lib/mcp/tools/assortment/assortmentChildrenHandler.d.ts.map +1 -0
- package/lib/mcp/tools/assortment/assortmentChildrenHandler.js +43 -0
- package/lib/mcp/tools/assortment/assortmentChildrenHandler.js.map +1 -0
- package/lib/mcp/tools/assortment/assortmentFiltersHandler.d.ts +20 -0
- package/lib/mcp/tools/assortment/assortmentFiltersHandler.d.ts.map +1 -0
- package/lib/mcp/tools/assortment/assortmentFiltersHandler.js +37 -0
- package/lib/mcp/tools/assortment/assortmentFiltersHandler.js.map +1 -0
- package/lib/mcp/tools/assortment/assortmentHandler.d.ts +30 -0
- package/lib/mcp/tools/assortment/assortmentHandler.d.ts.map +1 -0
- package/lib/mcp/tools/assortment/assortmentHandler.js +52 -0
- package/lib/mcp/tools/assortment/assortmentHandler.js.map +1 -0
- package/lib/mcp/tools/assortment/assortmentLinksHandler.d.ts +20 -0
- package/lib/mcp/tools/assortment/assortmentLinksHandler.d.ts.map +1 -0
- package/lib/mcp/tools/assortment/assortmentLinksHandler.js +49 -0
- package/lib/mcp/tools/assortment/assortmentLinksHandler.js.map +1 -0
- package/lib/mcp/tools/assortment/assortmentProductsHandler.d.ts +24 -0
- package/lib/mcp/tools/assortment/assortmentProductsHandler.d.ts.map +1 -0
- package/lib/mcp/tools/assortment/assortmentProductsHandler.js +44 -0
- package/lib/mcp/tools/assortment/assortmentProductsHandler.js.map +1 -0
- package/lib/mcp/tools/assortment/assortmentsCountHandler.d.ts +36 -0
- package/lib/mcp/tools/assortment/assortmentsCountHandler.d.ts.map +1 -0
- package/lib/mcp/tools/assortment/assortmentsCountHandler.js +47 -0
- package/lib/mcp/tools/assortment/assortmentsCountHandler.js.map +1 -0
- package/lib/mcp/tools/assortment/assortmentsHandler.d.ts +82 -0
- package/lib/mcp/tools/assortment/assortmentsHandler.d.ts.map +1 -0
- package/lib/mcp/tools/assortment/assortmentsHandler.js +57 -0
- package/lib/mcp/tools/assortment/assortmentsHandler.js.map +1 -0
- package/lib/mcp/tools/assortment/createAssortmentHandler.d.ts +125 -0
- package/lib/mcp/tools/assortment/createAssortmentHandler.d.ts.map +1 -0
- package/lib/mcp/tools/assortment/createAssortmentHandler.js +57 -0
- package/lib/mcp/tools/assortment/createAssortmentHandler.js.map +1 -0
- package/lib/mcp/tools/assortment/removeAssortmentFilterHandler.d.ts +20 -0
- package/lib/mcp/tools/assortment/removeAssortmentFilterHandler.d.ts.map +1 -0
- package/lib/mcp/tools/assortment/removeAssortmentFilterHandler.js +39 -0
- package/lib/mcp/tools/assortment/removeAssortmentFilterHandler.js.map +1 -0
- package/lib/mcp/tools/assortment/removeAssortmentHandler.d.ts +20 -0
- package/lib/mcp/tools/assortment/removeAssortmentHandler.d.ts.map +1 -0
- package/lib/mcp/tools/assortment/removeAssortmentHandler.js +38 -0
- package/lib/mcp/tools/assortment/removeAssortmentHandler.js.map +1 -0
- package/lib/mcp/tools/assortment/removeAssortmentLinkHandler.d.ts +20 -0
- package/lib/mcp/tools/assortment/removeAssortmentLinkHandler.d.ts.map +1 -0
- package/lib/mcp/tools/assortment/removeAssortmentLinkHandler.js +39 -0
- package/lib/mcp/tools/assortment/removeAssortmentLinkHandler.js.map +1 -0
- package/lib/mcp/tools/assortment/removeAssortmentMediaHandler.d.ts +20 -0
- package/lib/mcp/tools/assortment/removeAssortmentMediaHandler.d.ts.map +1 -0
- package/lib/mcp/tools/assortment/removeAssortmentMediaHandler.js +40 -0
- package/lib/mcp/tools/assortment/removeAssortmentMediaHandler.js.map +1 -0
- package/lib/mcp/tools/assortment/removeAssortmentProductHandler.d.ts +20 -0
- package/lib/mcp/tools/assortment/removeAssortmentProductHandler.d.ts.map +1 -0
- package/lib/mcp/tools/assortment/removeAssortmentProductHandler.js +39 -0
- package/lib/mcp/tools/assortment/removeAssortmentProductHandler.js.map +1 -0
- package/lib/mcp/tools/assortment/reorderAssortmentFiltersHandler.d.ts +54 -0
- package/lib/mcp/tools/assortment/reorderAssortmentFiltersHandler.d.ts.map +1 -0
- package/lib/mcp/tools/assortment/reorderAssortmentFiltersHandler.js +42 -0
- package/lib/mcp/tools/assortment/reorderAssortmentFiltersHandler.js.map +1 -0
- package/lib/mcp/tools/assortment/reorderAssortmentLinksHandler.d.ts +54 -0
- package/lib/mcp/tools/assortment/reorderAssortmentLinksHandler.d.ts.map +1 -0
- package/lib/mcp/tools/assortment/reorderAssortmentLinksHandler.js +42 -0
- package/lib/mcp/tools/assortment/reorderAssortmentLinksHandler.js.map +1 -0
- package/lib/mcp/tools/assortment/reorderAssortmentMediaHandler.d.ts +54 -0
- package/lib/mcp/tools/assortment/reorderAssortmentMediaHandler.d.ts.map +1 -0
- package/lib/mcp/tools/assortment/reorderAssortmentMediaHandler.js +42 -0
- package/lib/mcp/tools/assortment/reorderAssortmentMediaHandler.js.map +1 -0
- package/lib/mcp/tools/assortment/reorderAssortmentProductsHandler.d.ts +54 -0
- package/lib/mcp/tools/assortment/reorderAssortmentProductsHandler.d.ts.map +1 -0
- package/lib/mcp/tools/assortment/reorderAssortmentProductsHandler.js +42 -0
- package/lib/mcp/tools/assortment/reorderAssortmentProductsHandler.js.map +1 -0
- package/lib/mcp/tools/assortment/searchAssortmentProductHandler.d.ts +68 -0
- package/lib/mcp/tools/assortment/searchAssortmentProductHandler.d.ts.map +1 -0
- package/lib/mcp/tools/assortment/searchAssortmentProductHandler.js +75 -0
- package/lib/mcp/tools/assortment/searchAssortmentProductHandler.js.map +1 -0
- package/lib/mcp/tools/assortment/setBaseAssortmentHandler.d.ts +20 -0
- package/lib/mcp/tools/assortment/setBaseAssortmentHandler.d.ts.map +1 -0
- package/lib/mcp/tools/assortment/setBaseAssortmentHandler.js +39 -0
- package/lib/mcp/tools/assortment/setBaseAssortmentHandler.js.map +1 -0
- package/lib/mcp/tools/assortment/translatedAssortmentMediaTextsHandler.d.ts +20 -0
- package/lib/mcp/tools/assortment/translatedAssortmentMediaTextsHandler.d.ts.map +1 -0
- package/lib/mcp/tools/assortment/translatedAssortmentMediaTextsHandler.js +35 -0
- package/lib/mcp/tools/assortment/translatedAssortmentMediaTextsHandler.js.map +1 -0
- package/lib/mcp/tools/assortment/translatedAssortmentTextsHandler.d.ts +20 -0
- package/lib/mcp/tools/assortment/translatedAssortmentTextsHandler.d.ts.map +1 -0
- package/lib/mcp/tools/assortment/translatedAssortmentTextsHandler.js +33 -0
- package/lib/mcp/tools/assortment/translatedAssortmentTextsHandler.js.map +1 -0
- package/lib/mcp/tools/assortment/updateAssortmentHandler.d.ts +80 -0
- package/lib/mcp/tools/assortment/updateAssortmentHandler.d.ts.map +1 -0
- package/lib/mcp/tools/assortment/updateAssortmentHandler.js +57 -0
- package/lib/mcp/tools/assortment/updateAssortmentHandler.js.map +1 -0
- package/lib/mcp/tools/assortment/updateAssortmentMediaTextsHandler.d.ts +69 -0
- package/lib/mcp/tools/assortment/updateAssortmentMediaTextsHandler.d.ts.map +1 -0
- package/lib/mcp/tools/assortment/updateAssortmentMediaTextsHandler.js +48 -0
- package/lib/mcp/tools/assortment/updateAssortmentMediaTextsHandler.js.map +1 -0
- package/lib/mcp/tools/country/countriesCountHandler.d.ts +24 -0
- package/lib/mcp/tools/country/countriesCountHandler.d.ts.map +1 -0
- package/lib/mcp/tools/country/countriesCountHandler.js +41 -0
- package/lib/mcp/tools/country/countriesCountHandler.js.map +1 -0
- package/lib/mcp/tools/country/countriesHandler.d.ts +60 -0
- package/lib/mcp/tools/country/countriesHandler.d.ts.map +1 -0
- package/lib/mcp/tools/country/countriesHandler.js +48 -0
- package/lib/mcp/tools/country/countriesHandler.js.map +1 -0
- package/lib/mcp/tools/country/countryHandler.d.ts +20 -0
- package/lib/mcp/tools/country/countryHandler.d.ts.map +1 -0
- package/lib/mcp/tools/country/countryHandler.js +34 -0
- package/lib/mcp/tools/country/countryHandler.js.map +1 -0
- package/lib/mcp/tools/country/createCountryHandler.d.ts +36 -0
- package/lib/mcp/tools/country/createCountryHandler.d.ts.map +1 -0
- package/lib/mcp/tools/country/createCountryHandler.js +41 -0
- package/lib/mcp/tools/country/createCountryHandler.js.map +1 -0
- package/lib/mcp/tools/country/removeCountryHandler.d.ts +20 -0
- package/lib/mcp/tools/country/removeCountryHandler.d.ts.map +1 -0
- package/lib/mcp/tools/country/removeCountryHandler.js +37 -0
- package/lib/mcp/tools/country/removeCountryHandler.js.map +1 -0
- package/lib/mcp/tools/country/updateCountryHandler.d.ts +56 -0
- package/lib/mcp/tools/country/updateCountryHandler.d.ts.map +1 -0
- package/lib/mcp/tools/country/updateCountryHandler.js +53 -0
- package/lib/mcp/tools/country/updateCountryHandler.js.map +1 -0
- package/lib/mcp/tools/currency/createCurrencyHandler.d.ts +52 -0
- package/lib/mcp/tools/currency/createCurrencyHandler.d.ts.map +1 -0
- package/lib/mcp/tools/currency/createCurrencyHandler.js +48 -0
- package/lib/mcp/tools/currency/createCurrencyHandler.js.map +1 -0
- package/lib/mcp/tools/currency/currenciesCountHandler.d.ts +24 -0
- package/lib/mcp/tools/currency/currenciesCountHandler.d.ts.map +1 -0
- package/lib/mcp/tools/currency/currenciesCountHandler.js +40 -0
- package/lib/mcp/tools/currency/currenciesCountHandler.js.map +1 -0
- package/lib/mcp/tools/currency/currenciesHandler.d.ts +60 -0
- package/lib/mcp/tools/currency/currenciesHandler.d.ts.map +1 -0
- package/lib/mcp/tools/currency/currenciesHandler.js +50 -0
- package/lib/mcp/tools/currency/currenciesHandler.js.map +1 -0
- package/lib/mcp/tools/currency/currencyHandler.d.ts +20 -0
- package/lib/mcp/tools/currency/currencyHandler.d.ts.map +1 -0
- package/lib/mcp/tools/currency/currencyHandler.js +34 -0
- package/lib/mcp/tools/currency/currencyHandler.js.map +1 -0
- package/lib/mcp/tools/currency/removeCurrencyHandler.d.ts +20 -0
- package/lib/mcp/tools/currency/removeCurrencyHandler.d.ts.map +1 -0
- package/lib/mcp/tools/currency/removeCurrencyHandler.js +37 -0
- package/lib/mcp/tools/currency/removeCurrencyHandler.js.map +1 -0
- package/lib/mcp/tools/currency/updateCurrencyHandler.d.ts +56 -0
- package/lib/mcp/tools/currency/updateCurrencyHandler.d.ts.map +1 -0
- package/lib/mcp/tools/currency/updateCurrencyHandler.js +48 -0
- package/lib/mcp/tools/currency/updateCurrencyHandler.js.map +1 -0
- package/lib/mcp/tools/filter/createFilterHandler.d.ts +114 -0
- package/lib/mcp/tools/filter/createFilterHandler.d.ts.map +1 -0
- package/lib/mcp/tools/filter/createFilterHandler.js +53 -0
- package/lib/mcp/tools/filter/createFilterHandler.js.map +1 -0
- package/lib/mcp/tools/filter/createFilterOptionHandler.d.ts +73 -0
- package/lib/mcp/tools/filter/createFilterOptionHandler.d.ts.map +1 -0
- package/lib/mcp/tools/filter/createFilterOptionHandler.js +53 -0
- package/lib/mcp/tools/filter/createFilterOptionHandler.js.map +1 -0
- package/lib/mcp/tools/filter/getFilterHandler.d.ts +20 -0
- package/lib/mcp/tools/filter/getFilterHandler.d.ts.map +1 -0
- package/lib/mcp/tools/filter/getFilterHandler.js +38 -0
- package/lib/mcp/tools/filter/getFilterHandler.js.map +1 -0
- package/lib/mcp/tools/filter/getFiltersHandler.d.ts +60 -0
- package/lib/mcp/tools/filter/getFiltersHandler.d.ts.map +1 -0
- package/lib/mcp/tools/filter/getFiltersHandler.js +50 -0
- package/lib/mcp/tools/filter/getFiltersHandler.js.map +1 -0
- package/lib/mcp/tools/filter/removeFilterHandler.d.ts +20 -0
- package/lib/mcp/tools/filter/removeFilterHandler.d.ts.map +1 -0
- package/lib/mcp/tools/filter/removeFilterHandler.js +39 -0
- package/lib/mcp/tools/filter/removeFilterHandler.js.map +1 -0
- package/lib/mcp/tools/filter/removeFilterOptionHandler.d.ts +24 -0
- package/lib/mcp/tools/filter/removeFilterOptionHandler.d.ts.map +1 -0
- package/lib/mcp/tools/filter/removeFilterOptionHandler.js +44 -0
- package/lib/mcp/tools/filter/removeFilterOptionHandler.js.map +1 -0
- package/lib/mcp/tools/filter/translatedFilterTextsHandler.d.ts +24 -0
- package/lib/mcp/tools/filter/translatedFilterTextsHandler.d.ts.map +1 -0
- package/lib/mcp/tools/filter/translatedFilterTextsHandler.js +42 -0
- package/lib/mcp/tools/filter/translatedFilterTextsHandler.js.map +1 -0
- package/lib/mcp/tools/filter/updateFilterHandler.d.ts +58 -0
- package/lib/mcp/tools/filter/updateFilterHandler.d.ts.map +1 -0
- package/lib/mcp/tools/filter/updateFilterHandler.js +44 -0
- package/lib/mcp/tools/filter/updateFilterHandler.js.map +1 -0
- package/lib/mcp/tools/filter/updateFilterTextsHandler.d.ts +73 -0
- package/lib/mcp/tools/filter/updateFilterTextsHandler.d.ts.map +1 -0
- package/lib/mcp/tools/filter/updateFilterTextsHandler.js +46 -0
- package/lib/mcp/tools/filter/updateFilterTextsHandler.js.map +1 -0
- package/lib/mcp/tools/index.d.ts +83 -35
- package/lib/mcp/tools/index.d.ts.map +1 -1
- package/lib/mcp/tools/index.js +83 -35
- package/lib/mcp/tools/index.js.map +1 -1
- package/lib/mcp/tools/language/createLanguageHandler.d.ts +36 -0
- package/lib/mcp/tools/language/createLanguageHandler.d.ts.map +1 -0
- package/lib/mcp/tools/language/createLanguageHandler.js +39 -0
- package/lib/mcp/tools/language/createLanguageHandler.js.map +1 -0
- package/lib/mcp/tools/language/languageHandler.d.ts +20 -0
- package/lib/mcp/tools/language/languageHandler.d.ts.map +1 -0
- package/lib/mcp/tools/language/languageHandler.js +31 -0
- package/lib/mcp/tools/language/languageHandler.js.map +1 -0
- package/lib/mcp/tools/language/languagesCountHandler.d.ts +24 -0
- package/lib/mcp/tools/language/languagesCountHandler.d.ts.map +1 -0
- package/lib/mcp/tools/language/languagesCountHandler.js +36 -0
- package/lib/mcp/tools/language/languagesCountHandler.js.map +1 -0
- package/lib/mcp/tools/language/languagesHandler.d.ts +60 -0
- package/lib/mcp/tools/language/languagesHandler.d.ts.map +1 -0
- package/lib/mcp/tools/language/languagesHandler.js +42 -0
- package/lib/mcp/tools/language/languagesHandler.js.map +1 -0
- package/lib/mcp/tools/language/removeLanguageHandler.d.ts +20 -0
- package/lib/mcp/tools/language/removeLanguageHandler.d.ts.map +1 -0
- package/lib/mcp/tools/language/removeLanguageHandler.js +35 -0
- package/lib/mcp/tools/language/removeLanguageHandler.js.map +1 -0
- package/lib/mcp/tools/language/updateLanguageHandler.d.ts +48 -0
- package/lib/mcp/tools/language/updateLanguageHandler.d.ts.map +1 -0
- package/lib/mcp/tools/language/updateLanguageHandler.js +40 -0
- package/lib/mcp/tools/language/updateLanguageHandler.js.map +1 -0
- package/lib/mcp/tools/product/addProductAssignmentHandler.d.ts +52 -0
- package/lib/mcp/tools/product/addProductAssignmentHandler.d.ts.map +1 -0
- package/lib/mcp/tools/product/addProductAssignmentHandler.js +97 -0
- package/lib/mcp/tools/product/addProductAssignmentHandler.js.map +1 -0
- package/lib/mcp/tools/product/addProductMediaUploadHandler.d.ts +28 -0
- package/lib/mcp/tools/product/addProductMediaUploadHandler.d.ts.map +1 -0
- package/lib/mcp/tools/product/addProductMediaUploadHandler.js +62 -0
- package/lib/mcp/tools/product/addProductMediaUploadHandler.js.map +1 -0
- package/lib/mcp/tools/product/createProductHandler.d.ts +138 -0
- package/lib/mcp/tools/product/createProductHandler.d.ts.map +1 -0
- package/lib/mcp/tools/product/createProductHandler.js +60 -0
- package/lib/mcp/tools/product/createProductHandler.js.map +1 -0
- package/lib/mcp/tools/product/createProductVariationHandler.d.ts +84 -0
- package/lib/mcp/tools/product/createProductVariationHandler.d.ts.map +1 -0
- package/lib/mcp/tools/product/createProductVariationHandler.js +73 -0
- package/lib/mcp/tools/product/createProductVariationHandler.js.map +1 -0
- package/lib/mcp/tools/product/createProductVariationOptionHandler.d.ts +60 -0
- package/lib/mcp/tools/product/createProductVariationOptionHandler.d.ts.map +1 -0
- package/lib/mcp/tools/product/createProductVariationOptionHandler.js +59 -0
- package/lib/mcp/tools/product/createProductVariationOptionHandler.js.map +1 -0
- package/lib/mcp/tools/product/getProduct.d.ts +48 -0
- package/lib/mcp/tools/product/getProduct.d.ts.map +1 -0
- package/lib/mcp/tools/product/getProduct.js +61 -0
- package/lib/mcp/tools/product/getProduct.js.map +1 -0
- package/lib/mcp/tools/product/listProducts.d.ts +112 -0
- package/lib/mcp/tools/product/listProducts.d.ts.map +1 -0
- package/lib/mcp/tools/product/listProducts.js +110 -0
- package/lib/mcp/tools/product/listProducts.js.map +1 -0
- package/lib/mcp/tools/product/productReviewsCountHandler.d.ts +20 -0
- package/lib/mcp/tools/product/productReviewsCountHandler.d.ts.map +1 -0
- package/lib/mcp/tools/product/productReviewsCountHandler.js +30 -0
- package/lib/mcp/tools/product/productReviewsCountHandler.js.map +1 -0
- package/lib/mcp/tools/product/productReviewsHandler.d.ts +56 -0
- package/lib/mcp/tools/product/productReviewsHandler.d.ts.map +1 -0
- package/lib/mcp/tools/product/productReviewsHandler.js +45 -0
- package/lib/mcp/tools/product/productReviewsHandler.js.map +1 -0
- package/lib/mcp/tools/product/productsCountHandler.d.ts +32 -0
- package/lib/mcp/tools/product/productsCountHandler.d.ts.map +1 -0
- package/lib/mcp/tools/product/productsCountHandler.js +33 -0
- package/lib/mcp/tools/product/productsCountHandler.js.map +1 -0
- package/lib/mcp/tools/product/publishProduct.d.ts +20 -0
- package/lib/mcp/tools/product/publishProduct.d.ts.map +1 -0
- package/lib/mcp/tools/product/publishProduct.js +40 -0
- package/lib/mcp/tools/product/publishProduct.js.map +1 -0
- package/lib/mcp/tools/product/removeProductAssignmentHandler.d.ts +48 -0
- package/lib/mcp/tools/product/removeProductAssignmentHandler.d.ts.map +1 -0
- package/lib/mcp/tools/product/removeProductAssignmentHandler.js +51 -0
- package/lib/mcp/tools/product/removeProductAssignmentHandler.js.map +1 -0
- package/lib/mcp/tools/product/removeProductHandler.d.ts +20 -0
- package/lib/mcp/tools/product/removeProductHandler.d.ts.map +1 -0
- package/lib/mcp/tools/product/removeProductHandler.js +34 -0
- package/lib/mcp/tools/product/removeProductHandler.js.map +1 -0
- package/lib/mcp/tools/product/removeProductMediaHandler.d.ts +20 -0
- package/lib/mcp/tools/product/removeProductMediaHandler.d.ts.map +1 -0
- package/lib/mcp/tools/product/removeProductMediaHandler.js +42 -0
- package/lib/mcp/tools/product/removeProductMediaHandler.js.map +1 -0
- package/lib/mcp/tools/product/removeProductVariationHandler.d.ts +20 -0
- package/lib/mcp/tools/product/removeProductVariationHandler.d.ts.map +1 -0
- package/lib/mcp/tools/product/removeProductVariationHandler.js +43 -0
- package/lib/mcp/tools/product/removeProductVariationHandler.js.map +1 -0
- package/lib/mcp/tools/product/removeProductVariationOptionHandler.d.ts +24 -0
- package/lib/mcp/tools/product/removeProductVariationOptionHandler.d.ts.map +1 -0
- package/lib/mcp/tools/product/removeProductVariationOptionHandler.js +47 -0
- package/lib/mcp/tools/product/removeProductVariationOptionHandler.js.map +1 -0
- package/lib/mcp/tools/product/reorderProductMediaHandler.d.ts +44 -0
- package/lib/mcp/tools/product/reorderProductMediaHandler.d.ts.map +1 -0
- package/lib/mcp/tools/product/reorderProductMediaHandler.js +39 -0
- package/lib/mcp/tools/product/reorderProductMediaHandler.js.map +1 -0
- package/lib/mcp/tools/product/translatedProductMediaTextsHandler.d.ts +20 -0
- package/lib/mcp/tools/product/translatedProductMediaTextsHandler.d.ts.map +1 -0
- package/lib/mcp/tools/product/translatedProductMediaTextsHandler.js +33 -0
- package/lib/mcp/tools/product/translatedProductMediaTextsHandler.js.map +1 -0
- package/lib/mcp/tools/product/translatedProductTextsHandler.d.ts +20 -0
- package/lib/mcp/tools/product/translatedProductTextsHandler.d.ts.map +1 -0
- package/lib/mcp/tools/product/translatedProductTextsHandler.js +33 -0
- package/lib/mcp/tools/product/translatedProductTextsHandler.js.map +1 -0
- package/lib/mcp/tools/product/translatedProductVariationTextsHandler.d.ts +24 -0
- package/lib/mcp/tools/product/translatedProductVariationTextsHandler.d.ts.map +1 -0
- package/lib/mcp/tools/product/translatedProductVariationTextsHandler.js +42 -0
- package/lib/mcp/tools/product/translatedProductVariationTextsHandler.js.map +1 -0
- package/lib/mcp/tools/product/unPublishProduct.d.ts +20 -0
- package/lib/mcp/tools/product/unPublishProduct.d.ts.map +1 -0
- package/lib/mcp/tools/product/unPublishProduct.js +40 -0
- package/lib/mcp/tools/product/unPublishProduct.js.map +1 -0
- package/lib/mcp/tools/product/updateProduct.d.ts +56 -0
- package/lib/mcp/tools/product/updateProduct.d.ts.map +1 -0
- package/lib/mcp/tools/product/updateProduct.js +44 -0
- package/lib/mcp/tools/product/updateProduct.js.map +1 -0
- package/lib/mcp/tools/product/updateProductCommerceHandler.d.ts +166 -0
- package/lib/mcp/tools/product/updateProductCommerceHandler.d.ts.map +1 -0
- package/lib/mcp/tools/product/updateProductCommerceHandler.js +64 -0
- package/lib/mcp/tools/product/updateProductCommerceHandler.js.map +1 -0
- package/lib/mcp/tools/product/updateProductMediaTextsHandler.d.ts +56 -0
- package/lib/mcp/tools/product/updateProductMediaTextsHandler.d.ts.map +1 -0
- package/lib/mcp/tools/product/updateProductMediaTextsHandler.js +48 -0
- package/lib/mcp/tools/product/updateProductMediaTextsHandler.js.map +1 -0
- package/lib/mcp/tools/product/updateProductPlanHandler.d.ts +72 -0
- package/lib/mcp/tools/product/updateProductPlanHandler.d.ts.map +1 -0
- package/lib/mcp/tools/product/updateProductPlanHandler.js +51 -0
- package/lib/mcp/tools/product/updateProductPlanHandler.js.map +1 -0
- package/lib/mcp/tools/product/updateProductSupplyHandler.d.ts +64 -0
- package/lib/mcp/tools/product/updateProductSupplyHandler.d.ts.map +1 -0
- package/lib/mcp/tools/product/updateProductSupplyHandler.js +52 -0
- package/lib/mcp/tools/product/updateProductSupplyHandler.js.map +1 -0
- package/lib/mcp/tools/product/updateProductTextsHandler.d.ts +114 -0
- package/lib/mcp/tools/product/updateProductTextsHandler.d.ts.map +1 -0
- package/lib/mcp/tools/product/updateProductTextsHandler.js +50 -0
- package/lib/mcp/tools/product/updateProductTextsHandler.js.map +1 -0
- package/lib/mcp/tools/product/updateProductTokenizationHandler.d.ts +72 -0
- package/lib/mcp/tools/product/updateProductTokenizationHandler.d.ts.map +1 -0
- package/lib/mcp/tools/product/updateProductTokenizationHandler.js +49 -0
- package/lib/mcp/tools/product/updateProductTokenizationHandler.js.map +1 -0
- package/lib/mcp/tools/product/updateProductWarehousingHandler.d.ts +48 -0
- package/lib/mcp/tools/product/updateProductWarehousingHandler.d.ts.map +1 -0
- package/lib/mcp/tools/product/updateProductWarehousingHandler.js +45 -0
- package/lib/mcp/tools/product/updateProductWarehousingHandler.js.map +1 -0
- package/lib/mcp/tools/shopInfoHandler.d.ts +8 -0
- package/lib/mcp/tools/shopInfoHandler.d.ts.map +1 -0
- package/lib/mcp/tools/shopInfoHandler.js +29 -0
- package/lib/mcp/tools/shopInfoHandler.js.map +1 -0
- package/lib/mcp/utils/getNormalizedAssortmentDetails.d.ts +21 -0
- package/lib/mcp/utils/getNormalizedAssortmentDetails.d.ts.map +1 -0
- package/lib/mcp/utils/getNormalizedAssortmentDetails.js +32 -0
- package/lib/mcp/utils/getNormalizedAssortmentDetails.js.map +1 -0
- package/lib/mcp/utils/getNormalizedFilterDetails.d.ts +25 -0
- package/lib/mcp/utils/getNormalizedFilterDetails.d.ts.map +1 -0
- package/lib/mcp/utils/getNormalizedFilterDetails.js +19 -0
- package/lib/mcp/utils/getNormalizedFilterDetails.js.map +1 -0
- package/lib/resolvers/mutations/accounts/createUser.d.ts.map +1 -1
- package/lib/resolvers/mutations/accounts/createUser.js +5 -0
- package/lib/resolvers/mutations/accounts/createUser.js.map +1 -1
- package/lib/resolvers/queries/index.js +1 -1
- package/lib/resolvers/queries/index.js.map +1 -1
- package/lib/roles/all.d.ts.map +1 -1
- package/lib/roles/all.js +10 -0
- package/lib/roles/all.js.map +1 -1
- package/lib/roles/index.d.ts.map +1 -1
- package/lib/roles/index.js +1 -0
- package/lib/roles/index.js.map +1 -1
- package/package.json +6 -6
- package/src/locale-context.ts +2 -7
- package/src/mcp/index.ts +410 -5
- package/src/mcp/tools/assortment/addAssortmentFilterHandler.ts +62 -0
- package/src/mcp/tools/assortment/addAssortmentLinkHandler.ts +63 -0
- package/src/mcp/tools/assortment/addAssortmentMediaUploadHandler.ts +79 -0
- package/src/mcp/tools/assortment/addAssortmentProductHandler.ts +57 -0
- package/src/mcp/tools/assortment/assortmentChildrenHandler.ts +54 -0
- package/src/mcp/tools/assortment/assortmentFiltersHandler.ts +46 -0
- package/src/mcp/tools/assortment/assortmentHandler.ts +63 -0
- package/src/mcp/tools/assortment/assortmentLinksHandler.ts +61 -0
- package/src/mcp/tools/assortment/assortmentProductsHandler.ts +56 -0
- package/src/mcp/tools/assortment/assortmentsCountHandler.ts +53 -0
- package/src/mcp/tools/assortment/assortmentsHandler.ts +67 -0
- package/src/mcp/tools/assortment/createAssortmentHandler.ts +71 -0
- package/src/mcp/tools/assortment/removeAssortmentFilterHandler.ts +50 -0
- package/src/mcp/tools/assortment/removeAssortmentHandler.ts +44 -0
- package/src/mcp/tools/assortment/removeAssortmentLinkHandler.ts +47 -0
- package/src/mcp/tools/assortment/removeAssortmentMediaHandler.ts +50 -0
- package/src/mcp/tools/assortment/removeAssortmentProductHandler.ts +49 -0
- package/src/mcp/tools/assortment/reorderAssortmentFiltersHandler.ts +53 -0
- package/src/mcp/tools/assortment/reorderAssortmentLinksHandler.ts +53 -0
- package/src/mcp/tools/assortment/reorderAssortmentMediaHandler.ts +53 -0
- package/src/mcp/tools/assortment/reorderAssortmentProductsHandler.ts +53 -0
- package/src/mcp/tools/assortment/searchAssortmentProductHandler.ts +87 -0
- package/src/mcp/tools/assortment/setBaseAssortmentHandler.ts +46 -0
- package/src/mcp/tools/assortment/translatedAssortmentMediaTextsHandler.ts +47 -0
- package/src/mcp/tools/assortment/translatedAssortmentTextsHandler.ts +43 -0
- package/src/mcp/tools/assortment/updateAssortmentHandler.ts +64 -0
- package/src/mcp/tools/assortment/updateAssortmentMediaTextsHandler.ts +64 -0
- package/src/mcp/tools/country/countriesCountHandler.ts +48 -0
- package/src/mcp/tools/{countriesHandler.ts → country/countriesHandler.ts} +1 -1
- package/src/mcp/tools/{countryHandler.ts → country/countryHandler.ts} +2 -2
- package/src/mcp/tools/country/createCountryHandler.ts +47 -0
- package/src/mcp/tools/country/removeCountryHandler.ts +46 -0
- package/src/mcp/tools/country/updateCountryHandler.ts +60 -0
- package/src/mcp/tools/currency/createCurrencyHandler.ts +55 -0
- package/src/mcp/tools/currency/currenciesCountHandler.ts +47 -0
- package/src/mcp/tools/{currenciesHandler.ts → currency/currenciesHandler.ts} +1 -1
- package/src/mcp/tools/{currencyHandler.ts → currency/currencyHandler.ts} +2 -2
- package/src/mcp/tools/currency/removeCurrencyHandler.ts +46 -0
- package/src/mcp/tools/currency/updateCurrencyHandler.ts +56 -0
- package/src/mcp/tools/filter/createFilterHandler.ts +65 -0
- package/src/mcp/tools/filter/createFilterOptionHandler.ts +64 -0
- package/src/mcp/tools/filter/getFilterHandler.ts +46 -0
- package/src/mcp/tools/filter/getFiltersHandler.ts +59 -0
- package/src/mcp/tools/filter/removeFilterHandler.ts +45 -0
- package/src/mcp/tools/filter/removeFilterOptionHandler.ts +50 -0
- package/src/mcp/tools/filter/translatedFilterTextsHandler.ts +53 -0
- package/src/mcp/tools/filter/updateFilterHandler.ts +51 -0
- package/src/mcp/tools/filter/updateFilterTextsHandler.ts +54 -0
- package/src/mcp/tools/index.ts +85 -35
- package/src/mcp/tools/{createLanguageHandler.ts → language/createLanguageHandler.ts} +1 -1
- package/src/mcp/tools/{languageHandler.ts → language/languageHandler.ts} +1 -1
- package/src/mcp/tools/language/languagesCountHandler.ts +43 -0
- package/src/mcp/tools/{languagesHandler.ts → language/languagesHandler.ts} +1 -1
- package/src/mcp/tools/{removeLanguageHandler.ts → language/removeLanguageHandler.ts} +2 -2
- package/src/mcp/tools/{updateLanguageHandler.ts → language/updateLanguageHandler.ts} +2 -2
- package/src/mcp/tools/{addProductAssignmentHandler.ts → product/addProductAssignmentHandler.ts} +3 -3
- package/src/mcp/tools/{addProductMediaUploadHandler.ts → product/addProductMediaUploadHandler.ts} +2 -2
- package/src/mcp/tools/{createProduct.ts → product/createProductHandler.ts} +2 -3
- package/src/mcp/tools/{createProductVariationHandler.ts → product/createProductVariationHandler.ts} +4 -4
- package/src/mcp/tools/{createProductVariationOptionHandler.ts → product/createProductVariationOptionHandler.ts} +4 -4
- package/src/mcp/tools/{getProduct.ts → product/getProduct.ts} +2 -2
- package/src/mcp/tools/{listProducts.ts → product/listProducts.ts} +3 -3
- package/src/mcp/tools/{productReviewsCountHandler.ts → product/productReviewsCountHandler.ts} +1 -1
- package/src/mcp/tools/{productReviewsHandler.ts → product/productReviewsHandler.ts} +2 -2
- package/src/mcp/tools/{productsCountHandler.ts → product/productsCountHandler.ts} +1 -1
- package/src/mcp/tools/{publishProduct.ts → product/publishProduct.ts} +3 -3
- package/src/mcp/tools/{removeProductAssignmentHandler.ts → product/removeProductAssignmentHandler.ts} +3 -3
- package/src/mcp/tools/{removeProductHandler.ts → product/removeProductHandler.ts} +2 -2
- package/src/mcp/tools/{removeProductMediaHandler.ts → product/removeProductMediaHandler.ts} +2 -2
- package/src/mcp/tools/{removeProductVariationHandler.ts → product/removeProductVariationHandler.ts} +3 -3
- package/src/mcp/tools/{removeProductVariationOptionHandler.ts → product/removeProductVariationOptionHandler.ts} +3 -3
- package/src/mcp/tools/{reorderProductMediaHandler.ts → product/reorderProductMediaHandler.ts} +2 -2
- package/src/mcp/tools/product/translatedProductMediaTextsHandler.ts +43 -0
- package/src/mcp/tools/product/translatedProductTextsHandler.ts +43 -0
- package/src/mcp/tools/product/translatedProductVariationTextsHandler.ts +57 -0
- package/src/mcp/tools/{unPublishProduct.ts → product/unPublishProduct.ts} +3 -3
- package/src/mcp/tools/{updateProduct.ts → product/updateProduct.ts} +3 -3
- package/src/mcp/tools/{updateProductCommerceHandler.ts → product/updateProductCommerceHandler.ts} +2 -2
- package/src/mcp/tools/{updateProductMediaTextsHandler.ts → product/updateProductMediaTextsHandler.ts} +8 -3
- package/src/mcp/tools/{updateProductPlanHandler.ts → product/updateProductPlanHandler.ts} +3 -3
- package/src/mcp/tools/{updateProductSupplyHandler.ts → product/updateProductSupplyHandler.ts} +3 -3
- package/src/mcp/tools/{updateProductTextsHandler.ts → product/updateProductTextsHandler.ts} +3 -3
- package/src/mcp/tools/{updateProductTokenizationHandler.ts → product/updateProductTokenizationHandler.ts} +3 -3
- package/src/mcp/tools/{updateProductWarehousingHandler.ts → product/updateProductWarehousingHandler.ts} +3 -3
- package/src/mcp/tools/shopInfoHandler.ts +33 -0
- package/src/mcp/utils/getNormalizedAssortmentDetails.ts +40 -0
- package/src/mcp/utils/getNormalizedFilterDetails.ts +23 -0
- package/src/resolvers/mutations/accounts/createUser.ts +6 -0
- package/src/resolvers/queries/index.ts +1 -1
- package/src/roles/all.ts +10 -0
- package/src/roles/index.ts +1 -0
package/src/mcp/index.ts
CHANGED
|
@@ -69,6 +69,99 @@ import {
|
|
|
69
69
|
productReviewsCountHandler,
|
|
70
70
|
ProductReviewsSchema,
|
|
71
71
|
productReviewsHandler,
|
|
72
|
+
TranslatedProductTextsSchema,
|
|
73
|
+
translatedProductTextsHandler,
|
|
74
|
+
TranslatedProductMediaTextsSchema,
|
|
75
|
+
translatedProductMediaTextsHandler,
|
|
76
|
+
TranslatedProductVariationTextsSchema,
|
|
77
|
+
translatedProductVariationTextsHandler,
|
|
78
|
+
shopInfoHandler,
|
|
79
|
+
CreateCountrySchema,
|
|
80
|
+
createCountryHandler,
|
|
81
|
+
UpdateCountrySchema,
|
|
82
|
+
updateCountryHandler,
|
|
83
|
+
RemoveCountrySchema,
|
|
84
|
+
removeCountryHandler,
|
|
85
|
+
CountriesCountSchema,
|
|
86
|
+
countriesCountHandler,
|
|
87
|
+
CreateCurrencySchema,
|
|
88
|
+
createCurrencyHandler,
|
|
89
|
+
UpdateCurrencySchema,
|
|
90
|
+
updateCurrencyHandler,
|
|
91
|
+
RemoveCurrencySchema,
|
|
92
|
+
removeCurrencyHandler,
|
|
93
|
+
CurrenciesCountSchema,
|
|
94
|
+
currenciesCountHandler,
|
|
95
|
+
LanguagesCountSchema,
|
|
96
|
+
languagesCountHandler,
|
|
97
|
+
CreateAssortmentSchema,
|
|
98
|
+
createAssortmentHandler,
|
|
99
|
+
AssortmentsSchema,
|
|
100
|
+
assortmentsHandler,
|
|
101
|
+
AssortmentsCountSchema,
|
|
102
|
+
assortmentsCountHandler,
|
|
103
|
+
AssortmentSchema,
|
|
104
|
+
assortmentHandler,
|
|
105
|
+
UpdateAssortmentSchema,
|
|
106
|
+
updateAssortmentHandler,
|
|
107
|
+
RemoveAssortmentSchema,
|
|
108
|
+
removeAssortmentHandler,
|
|
109
|
+
SetBaseAssortmentSchema,
|
|
110
|
+
setBaseAssortmentHandler,
|
|
111
|
+
AssortmentChildrenSchema,
|
|
112
|
+
assortmentChildrenHandler,
|
|
113
|
+
assortmentProductsHandler,
|
|
114
|
+
AssortmentProductsSchema,
|
|
115
|
+
searchAssortmentProductHandler,
|
|
116
|
+
SearchAssortmentProductSchema,
|
|
117
|
+
AssortmentLinksSchema,
|
|
118
|
+
assortmentLinksHandler,
|
|
119
|
+
AssortmentFiltersSchema,
|
|
120
|
+
assortmentFiltersHandler,
|
|
121
|
+
AddAssortmentProductSchema,
|
|
122
|
+
addAssortmentProductHandler,
|
|
123
|
+
RemoveAssortmentProductSchema,
|
|
124
|
+
removeAssortmentProductHandler,
|
|
125
|
+
ReorderAssortmentProductsSchema,
|
|
126
|
+
reorderAssortmentProductsHandler,
|
|
127
|
+
AddAssortmentLinkSchema,
|
|
128
|
+
addAssortmentLinkHandler,
|
|
129
|
+
RemoveAssortmentLinkSchema,
|
|
130
|
+
removeAssortmentLinkHandler,
|
|
131
|
+
ReorderAssortmentMediaSchema,
|
|
132
|
+
reorderAssortmentMediaHandler,
|
|
133
|
+
RemoveAssortmentMediaSchema,
|
|
134
|
+
removeAssortmentMediaHandler,
|
|
135
|
+
AddAssortmentMediaUploadSchema,
|
|
136
|
+
addAssortmentMediaUploadHandler,
|
|
137
|
+
CreateFilterSchema,
|
|
138
|
+
createFilterHandler,
|
|
139
|
+
UpdateFilterSchema,
|
|
140
|
+
updateFilterHandler,
|
|
141
|
+
RemoveFilterSchema,
|
|
142
|
+
removeFilterHandler,
|
|
143
|
+
CreateFilterOptionSchema,
|
|
144
|
+
createFilterOptionHandler,
|
|
145
|
+
UpdateFilterTextsSchema,
|
|
146
|
+
updateFilterTextsHandler,
|
|
147
|
+
RemoveFilterOptionSchema,
|
|
148
|
+
removeFilterOptionHandler,
|
|
149
|
+
GetFilterSchema,
|
|
150
|
+
getFilterHandler,
|
|
151
|
+
GetFiltersSchema,
|
|
152
|
+
getFiltersHandler,
|
|
153
|
+
TranslatedFilterTextsSchema,
|
|
154
|
+
translatedFilterTextsHandler,
|
|
155
|
+
TranslatedAssortmentMediaTextsSchema,
|
|
156
|
+
translatedAssortmentMediaTextsHandler,
|
|
157
|
+
TranslatedAssortmentTextsSchema,
|
|
158
|
+
translatedAssortmentTextsHandler,
|
|
159
|
+
AddAssortmentFilterSchema,
|
|
160
|
+
addAssortmentFilterHandler,
|
|
161
|
+
RemoveAssortmentFilterSchema,
|
|
162
|
+
removeAssortmentFilterHandler,
|
|
163
|
+
ReorderAssortmentFiltersSchema,
|
|
164
|
+
reorderAssortmentFiltersHandler,
|
|
72
165
|
} from './tools/index.js';
|
|
73
166
|
|
|
74
167
|
export default function createMcpServer(context: Context, roles) {
|
|
@@ -83,7 +176,7 @@ export default function createMcpServer(context: Context, roles) {
|
|
|
83
176
|
|
|
84
177
|
server.tool(
|
|
85
178
|
'list_products',
|
|
86
|
-
|
|
179
|
+
`Search and list products with comprehensive filtering, sorting, and pagination support.`,
|
|
87
180
|
ListProductsSchema,
|
|
88
181
|
async (params) => listProductsHandler(context, params),
|
|
89
182
|
);
|
|
@@ -173,7 +266,7 @@ export default function createMcpServer(context: Context, roles) {
|
|
|
173
266
|
|
|
174
267
|
server.tool(
|
|
175
268
|
'list_currencies',
|
|
176
|
-
'List all available currencies in the system,
|
|
269
|
+
'List all available currencies in the system, if non existing currency is provided to you by a user inform them it does not exist and to create it first before they can use it',
|
|
177
270
|
ListCurrenciesSchema,
|
|
178
271
|
async (params) => currenciesHandler(context, params),
|
|
179
272
|
);
|
|
@@ -187,7 +280,7 @@ export default function createMcpServer(context: Context, roles) {
|
|
|
187
280
|
|
|
188
281
|
server.tool(
|
|
189
282
|
'list_countries',
|
|
190
|
-
'List all available countries in the system,
|
|
283
|
+
'List all available countries in the system, if non existing country is provided to you by a user inform them it does not exist and to create it first before they can use it',
|
|
191
284
|
ListCountriesSchema,
|
|
192
285
|
async (params) => countriesHandler(context, params),
|
|
193
286
|
);
|
|
@@ -201,7 +294,7 @@ export default function createMcpServer(context: Context, roles) {
|
|
|
201
294
|
|
|
202
295
|
server.tool(
|
|
203
296
|
'list_languages',
|
|
204
|
-
'List all available languages in the system,
|
|
297
|
+
'List all available languages in the system, if non existing language is provided to you by a user inform them it does not exist and to create it first before they can use it',
|
|
205
298
|
ListLanguagesSchema,
|
|
206
299
|
async (params) => languagesHandler(context, params),
|
|
207
300
|
);
|
|
@@ -304,10 +397,322 @@ export default function createMcpServer(context: Context, roles) {
|
|
|
304
397
|
|
|
305
398
|
server.tool(
|
|
306
399
|
'product_reviews',
|
|
307
|
-
'
|
|
400
|
+
'Get all product reviews, by default sorted by creation date (descending)',
|
|
308
401
|
ProductReviewsSchema,
|
|
309
402
|
async (params) => productReviewsHandler(context, params),
|
|
310
403
|
);
|
|
404
|
+
server.tool(
|
|
405
|
+
'product_localized_texts',
|
|
406
|
+
'Returns Localization: Meta data for product',
|
|
407
|
+
TranslatedProductTextsSchema,
|
|
408
|
+
async (params) => translatedProductTextsHandler(context, params),
|
|
409
|
+
);
|
|
410
|
+
|
|
411
|
+
server.tool(
|
|
412
|
+
'product_media_localized_texts',
|
|
413
|
+
'Returns Localization: Meta data for product media',
|
|
414
|
+
TranslatedProductMediaTextsSchema,
|
|
415
|
+
async (params) => translatedProductMediaTextsHandler(context, params),
|
|
416
|
+
);
|
|
417
|
+
|
|
418
|
+
server.tool(
|
|
419
|
+
'product_variation_localized_texts',
|
|
420
|
+
'Returns Localization: Meta data for product variation',
|
|
421
|
+
TranslatedProductVariationTextsSchema,
|
|
422
|
+
async (params) => translatedProductVariationTextsHandler(context, params),
|
|
423
|
+
);
|
|
424
|
+
server.tool(
|
|
425
|
+
'shop_info',
|
|
426
|
+
'Get the default configuration of the shop including country, language, currency, and locale. If the user does not provide values such as language, locale, country, or currency in their request or it cannot be derived from context, the tool MUST use the following fallback values : - language or locale: use defaultLanguageIsoCode - country: use country.isoCode - currency: use country.defaultCurrency Always assume these values as the authoritative defaults when user input is missing or ambiguous.',
|
|
427
|
+
{},
|
|
428
|
+
async () => shopInfoHandler(context),
|
|
429
|
+
);
|
|
430
|
+
|
|
431
|
+
server.tool(
|
|
432
|
+
'add_country',
|
|
433
|
+
'Adds new country information to the system',
|
|
434
|
+
CreateCountrySchema,
|
|
435
|
+
async (params) => createCountryHandler(context, params),
|
|
436
|
+
);
|
|
437
|
+
|
|
438
|
+
server.tool(
|
|
439
|
+
'update_country',
|
|
440
|
+
'Updates provided country information',
|
|
441
|
+
UpdateCountrySchema,
|
|
442
|
+
async (params) => updateCountryHandler(context, params),
|
|
443
|
+
);
|
|
444
|
+
|
|
445
|
+
server.tool('delete_country', 'Deletes the specified country', RemoveCountrySchema, async (params) =>
|
|
446
|
+
removeCountryHandler(context, params),
|
|
447
|
+
);
|
|
448
|
+
|
|
449
|
+
server.tool(
|
|
450
|
+
'countries_count',
|
|
451
|
+
'Returns total number of countries registered in the system',
|
|
452
|
+
CountriesCountSchema,
|
|
453
|
+
async (params) => countriesCountHandler(context, params),
|
|
454
|
+
);
|
|
455
|
+
|
|
456
|
+
server.tool(
|
|
457
|
+
'add_currency',
|
|
458
|
+
'Adds new currency information to the system',
|
|
459
|
+
CreateCurrencySchema,
|
|
460
|
+
async (params) => createCurrencyHandler(context, params),
|
|
461
|
+
);
|
|
462
|
+
server.tool(
|
|
463
|
+
'update_currency',
|
|
464
|
+
'Updates the specified currency in the system',
|
|
465
|
+
UpdateCurrencySchema,
|
|
466
|
+
async (params) => updateCurrencyHandler(context, params),
|
|
467
|
+
);
|
|
468
|
+
|
|
469
|
+
server.tool(
|
|
470
|
+
'delete_currency',
|
|
471
|
+
'Deletes the specified currency from the system',
|
|
472
|
+
RemoveCurrencySchema,
|
|
473
|
+
async (params) => removeCurrencyHandler(context, params),
|
|
474
|
+
);
|
|
475
|
+
|
|
476
|
+
server.tool(
|
|
477
|
+
'currencies_count',
|
|
478
|
+
'Returns total number of currencies registered in the system',
|
|
479
|
+
CurrenciesCountSchema,
|
|
480
|
+
async (params) => currenciesCountHandler(context, params),
|
|
481
|
+
);
|
|
482
|
+
|
|
483
|
+
server.tool(
|
|
484
|
+
'languages_count',
|
|
485
|
+
'Returns total number of languages registered in the system',
|
|
486
|
+
LanguagesCountSchema,
|
|
487
|
+
async (params) => languagesCountHandler(context, params),
|
|
488
|
+
);
|
|
489
|
+
|
|
490
|
+
server.tool('add_assortment', 'Creates new assortment', CreateAssortmentSchema, async (params) =>
|
|
491
|
+
createAssortmentHandler(context, params),
|
|
492
|
+
);
|
|
493
|
+
|
|
494
|
+
server.tool(
|
|
495
|
+
'update_assortment',
|
|
496
|
+
'Updates the details of an existing assortment such as tags, active state, root status, or sort order.',
|
|
497
|
+
UpdateAssortmentSchema,
|
|
498
|
+
async (params) => updateAssortmentHandler(context, params),
|
|
499
|
+
);
|
|
500
|
+
|
|
501
|
+
server.tool(
|
|
502
|
+
'delete_assortment',
|
|
503
|
+
'Removes assortment with the provided ID',
|
|
504
|
+
RemoveAssortmentSchema,
|
|
505
|
+
async (params) => removeAssortmentHandler(context, params),
|
|
506
|
+
);
|
|
507
|
+
|
|
508
|
+
server.tool(
|
|
509
|
+
'set_assortment_base',
|
|
510
|
+
'Makes the assortment provided as the base assortment and make any other existing base assortment regular assortments.',
|
|
511
|
+
SetBaseAssortmentSchema,
|
|
512
|
+
async (params) => setBaseAssortmentHandler(context, params),
|
|
513
|
+
);
|
|
514
|
+
|
|
515
|
+
server.tool(
|
|
516
|
+
'get_assortment',
|
|
517
|
+
'Get a specific assortment by ID or slug',
|
|
518
|
+
AssortmentSchema,
|
|
519
|
+
async (params) => assortmentHandler(context, params),
|
|
520
|
+
);
|
|
521
|
+
|
|
522
|
+
server.tool(
|
|
523
|
+
'list_assortments',
|
|
524
|
+
'Search and list assortments with comprehensive filtering, sorting, and pagination support.',
|
|
525
|
+
AssortmentsSchema,
|
|
526
|
+
async (params) => assortmentsHandler(context, params),
|
|
527
|
+
);
|
|
528
|
+
|
|
529
|
+
server.tool(
|
|
530
|
+
'assortments_count',
|
|
531
|
+
'Returns total number of assortments that match a given criteria or all if no criteria is given',
|
|
532
|
+
AssortmentsCountSchema,
|
|
533
|
+
async (params) => assortmentsCountHandler(context, params),
|
|
534
|
+
);
|
|
535
|
+
|
|
536
|
+
server.tool(
|
|
537
|
+
'assortment_children',
|
|
538
|
+
'Returns child assortments of the specified assortmentID',
|
|
539
|
+
AssortmentChildrenSchema,
|
|
540
|
+
async (params) => assortmentChildrenHandler(context, params),
|
|
541
|
+
);
|
|
542
|
+
|
|
543
|
+
server.tool(
|
|
544
|
+
'assortment_products',
|
|
545
|
+
'Returns products assigned to the specified assortmentID',
|
|
546
|
+
AssortmentProductsSchema,
|
|
547
|
+
async (params) => assortmentProductsHandler(context, params),
|
|
548
|
+
);
|
|
549
|
+
|
|
550
|
+
server.tool(
|
|
551
|
+
'search_assortment_products',
|
|
552
|
+
'searches products assigned to the specified assortment using various parameters',
|
|
553
|
+
SearchAssortmentProductSchema,
|
|
554
|
+
async (params) => searchAssortmentProductHandler(context, params),
|
|
555
|
+
);
|
|
556
|
+
|
|
557
|
+
server.tool(
|
|
558
|
+
'assortment_links',
|
|
559
|
+
'return all the linked assortment of the specified assortment ID including all hierarchy',
|
|
560
|
+
AssortmentLinksSchema,
|
|
561
|
+
async (params) => assortmentLinksHandler(context, params),
|
|
562
|
+
);
|
|
563
|
+
|
|
564
|
+
server.tool(
|
|
565
|
+
'assortment_filters',
|
|
566
|
+
'Returns filters assigned to the specified assortmentID',
|
|
567
|
+
AssortmentFiltersSchema,
|
|
568
|
+
async (params) => assortmentFiltersHandler(context, params),
|
|
569
|
+
);
|
|
570
|
+
|
|
571
|
+
server.tool(
|
|
572
|
+
'add_assortment_product',
|
|
573
|
+
'Add a new product to an assortment',
|
|
574
|
+
AddAssortmentProductSchema,
|
|
575
|
+
async (params) => addAssortmentProductHandler(context, params),
|
|
576
|
+
);
|
|
577
|
+
|
|
578
|
+
server.tool(
|
|
579
|
+
'remove_assortment_product',
|
|
580
|
+
'Remove a product from an assortment',
|
|
581
|
+
RemoveAssortmentProductSchema,
|
|
582
|
+
async (params) => removeAssortmentProductHandler(context, params),
|
|
583
|
+
);
|
|
584
|
+
|
|
585
|
+
server.tool(
|
|
586
|
+
'reorder_assortment_products',
|
|
587
|
+
'Reorder sort sequence of products in an assortment',
|
|
588
|
+
ReorderAssortmentProductsSchema,
|
|
589
|
+
async (params) => reorderAssortmentProductsHandler(context, params),
|
|
590
|
+
);
|
|
591
|
+
|
|
592
|
+
server.tool(
|
|
593
|
+
'add_assortment_link',
|
|
594
|
+
'Add a new child assortment to an assortment',
|
|
595
|
+
AddAssortmentLinkSchema,
|
|
596
|
+
async (params) => addAssortmentLinkHandler(context, params),
|
|
597
|
+
);
|
|
598
|
+
|
|
599
|
+
server.tool(
|
|
600
|
+
'remove_assortment_link',
|
|
601
|
+
`Removes a child/parent assortment link from it's parent`,
|
|
602
|
+
RemoveAssortmentLinkSchema,
|
|
603
|
+
async (params) => removeAssortmentLinkHandler(context, params),
|
|
604
|
+
);
|
|
605
|
+
|
|
606
|
+
server.tool(
|
|
607
|
+
'reorder_assortment_links',
|
|
608
|
+
` Reorders the assortment links in parent assortment`,
|
|
609
|
+
RemoveAssortmentLinkSchema,
|
|
610
|
+
async (params) => removeAssortmentLinkHandler(context, params),
|
|
611
|
+
);
|
|
612
|
+
|
|
613
|
+
server.tool(
|
|
614
|
+
'reorder_assortment_medias',
|
|
615
|
+
`Reorders the assortment medias`,
|
|
616
|
+
ReorderAssortmentMediaSchema,
|
|
617
|
+
async (params) => reorderAssortmentMediaHandler(context, params),
|
|
618
|
+
);
|
|
619
|
+
|
|
620
|
+
server.tool(
|
|
621
|
+
'add_assortment_media',
|
|
622
|
+
`Add a media asset to a assortment`,
|
|
623
|
+
RemoveAssortmentMediaSchema,
|
|
624
|
+
async (params) => removeAssortmentMediaHandler(context, params),
|
|
625
|
+
);
|
|
626
|
+
server.tool(
|
|
627
|
+
'remove_assortment_media',
|
|
628
|
+
`Remove a media asset from a assortment`,
|
|
629
|
+
AddAssortmentMediaUploadSchema,
|
|
630
|
+
async (params) => addAssortmentMediaUploadHandler(context, params),
|
|
631
|
+
);
|
|
632
|
+
|
|
633
|
+
server.tool('add_filter', `Creates new Filter`, CreateFilterSchema, async (params) =>
|
|
634
|
+
createFilterHandler(context, params),
|
|
635
|
+
);
|
|
636
|
+
server.tool('update_filter', `Update filter information`, UpdateFilterSchema, async (params) =>
|
|
637
|
+
updateFilterHandler(context, params),
|
|
638
|
+
);
|
|
639
|
+
|
|
640
|
+
server.tool('remove_filter', ` Deletes the specified filter`, RemoveFilterSchema, async (params) =>
|
|
641
|
+
removeFilterHandler(context, params),
|
|
642
|
+
);
|
|
643
|
+
server.tool(
|
|
644
|
+
'add_filter_option',
|
|
645
|
+
`Adds new option to filters`,
|
|
646
|
+
CreateFilterOptionSchema,
|
|
647
|
+
async (params) => createFilterOptionHandler(context, params),
|
|
648
|
+
);
|
|
649
|
+
|
|
650
|
+
server.tool(
|
|
651
|
+
'update_filter_texts',
|
|
652
|
+
`Updates or created specified filter texts for filter with ID provided and locale and optionally filterOptionValue`,
|
|
653
|
+
UpdateFilterTextsSchema,
|
|
654
|
+
async (params) => updateFilterTextsHandler(context, params),
|
|
655
|
+
);
|
|
656
|
+
|
|
657
|
+
server.tool(
|
|
658
|
+
'remove_filter_option',
|
|
659
|
+
`Removes the filter option from the specified filter.`,
|
|
660
|
+
RemoveFilterOptionSchema,
|
|
661
|
+
async (params) => removeFilterOptionHandler(context, params),
|
|
662
|
+
);
|
|
663
|
+
|
|
664
|
+
server.tool('get_filter', `Get a specific filter by ID`, GetFilterSchema, async (params) =>
|
|
665
|
+
getFilterHandler(context, params),
|
|
666
|
+
);
|
|
667
|
+
|
|
668
|
+
server.tool(
|
|
669
|
+
'list_filters',
|
|
670
|
+
`Get all filters, by default sorted by creation date (ascending), optionally it can filter based on various parameters including querystring`,
|
|
671
|
+
GetFiltersSchema,
|
|
672
|
+
async (params) => getFiltersHandler(context, params),
|
|
673
|
+
);
|
|
674
|
+
|
|
675
|
+
server.tool(
|
|
676
|
+
'filter_localized_texts',
|
|
677
|
+
`Returns localized filter texts found in the system for the specified filterId`,
|
|
678
|
+
TranslatedFilterTextsSchema,
|
|
679
|
+
async (params) => translatedFilterTextsHandler(context, params),
|
|
680
|
+
);
|
|
681
|
+
|
|
682
|
+
server.tool(
|
|
683
|
+
'assortment_media_localized_texts',
|
|
684
|
+
'Returns localized assortment media texts found in the system for the specified assortmentId',
|
|
685
|
+
TranslatedAssortmentMediaTextsSchema,
|
|
686
|
+
async (params) => translatedAssortmentMediaTextsHandler(context, params),
|
|
687
|
+
);
|
|
688
|
+
|
|
689
|
+
server.tool(
|
|
690
|
+
'assortment_localized_texts',
|
|
691
|
+
'Returns localized assortment texts found in the system for the specified assortmentId',
|
|
692
|
+
TranslatedAssortmentTextsSchema,
|
|
693
|
+
async (params) => translatedAssortmentTextsHandler(context, params),
|
|
694
|
+
);
|
|
695
|
+
|
|
696
|
+
server.tool(
|
|
697
|
+
'add_assortment_filter',
|
|
698
|
+
'Add/attach/link a filter to an assortment',
|
|
699
|
+
AddAssortmentFilterSchema,
|
|
700
|
+
async (params) => addAssortmentFilterHandler(context, params),
|
|
701
|
+
);
|
|
702
|
+
|
|
703
|
+
server.tool(
|
|
704
|
+
'remove_assortment_filter',
|
|
705
|
+
'Removes/unlinks a filter from assortment',
|
|
706
|
+
RemoveAssortmentFilterSchema,
|
|
707
|
+
async (params) => removeAssortmentFilterHandler(context, params),
|
|
708
|
+
);
|
|
709
|
+
|
|
710
|
+
server.tool(
|
|
711
|
+
'reorder_assortment_filters',
|
|
712
|
+
'Reorders the assortment filters',
|
|
713
|
+
ReorderAssortmentFiltersSchema,
|
|
714
|
+
async (params) => reorderAssortmentFiltersHandler(context, params),
|
|
715
|
+
);
|
|
311
716
|
|
|
312
717
|
return server;
|
|
313
718
|
}
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
import { Context } from '../../../context.js';
|
|
3
|
+
import { log } from '@unchainedshop/logger';
|
|
4
|
+
import { AssortmentNotFoundError, FilterNotFoundError } from '../../../errors.js';
|
|
5
|
+
import { getNormalizedAssortmentDetails } from '../../utils/getNormalizedAssortmentDetails.js';
|
|
6
|
+
import { getNormalizedFilterDetails } from '../../utils/getNormalizedFilterDetails.js';
|
|
7
|
+
|
|
8
|
+
export const AddAssortmentFilterSchema = {
|
|
9
|
+
assortmentId: z.string().min(1).describe('ID of the assortment'),
|
|
10
|
+
filterId: z.string().min(1).describe('ID of the filter to add'),
|
|
11
|
+
tags: z
|
|
12
|
+
.array(z.string().regex(/^[a-z0-9-_]+$/))
|
|
13
|
+
.optional()
|
|
14
|
+
.describe('Optional lowercase tags'),
|
|
15
|
+
};
|
|
16
|
+
|
|
17
|
+
export const AddAssortmentFilterZodSchema = z.object(AddAssortmentFilterSchema);
|
|
18
|
+
|
|
19
|
+
export type AddAssortmentFilterParams = z.infer<typeof AddAssortmentFilterZodSchema>;
|
|
20
|
+
|
|
21
|
+
export async function addAssortmentFilterHandler(context: Context, params: AddAssortmentFilterParams) {
|
|
22
|
+
const { assortmentId, filterId, tags = [] } = params;
|
|
23
|
+
const { modules, userId } = context;
|
|
24
|
+
|
|
25
|
+
try {
|
|
26
|
+
log('handler addAssortmentFilter', { userId, assortmentId, filterId, tags });
|
|
27
|
+
const assortment = await getNormalizedAssortmentDetails({ assortmentId }, context);
|
|
28
|
+
if (!assortment) throw new AssortmentNotFoundError({ assortmentId });
|
|
29
|
+
const filter = await getNormalizedFilterDetails(filterId, context);
|
|
30
|
+
if (!filter) throw new FilterNotFoundError({ filterId });
|
|
31
|
+
|
|
32
|
+
const assortmentFilter = await modules.assortments.filters.create({
|
|
33
|
+
assortmentId,
|
|
34
|
+
filterId,
|
|
35
|
+
tags,
|
|
36
|
+
} as any);
|
|
37
|
+
|
|
38
|
+
return {
|
|
39
|
+
content: [
|
|
40
|
+
{
|
|
41
|
+
type: 'text' as const,
|
|
42
|
+
text: JSON.stringify({
|
|
43
|
+
assortmentFilter: {
|
|
44
|
+
...assortmentFilter,
|
|
45
|
+
filter,
|
|
46
|
+
assortment,
|
|
47
|
+
},
|
|
48
|
+
}),
|
|
49
|
+
},
|
|
50
|
+
],
|
|
51
|
+
};
|
|
52
|
+
} catch (error) {
|
|
53
|
+
return {
|
|
54
|
+
content: [
|
|
55
|
+
{
|
|
56
|
+
type: 'text' as const,
|
|
57
|
+
text: `Error adding filter to assortment: ${(error as Error).message}`,
|
|
58
|
+
},
|
|
59
|
+
],
|
|
60
|
+
};
|
|
61
|
+
}
|
|
62
|
+
}
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
import { Context } from '../../../context.js';
|
|
3
|
+
import { log } from '@unchainedshop/logger';
|
|
4
|
+
import { getNormalizedAssortmentDetails } from '../../utils/getNormalizedAssortmentDetails.js';
|
|
5
|
+
import { AssortmentNotFoundError } from '../../../errors.js';
|
|
6
|
+
|
|
7
|
+
export const AddAssortmentLinkSchema = {
|
|
8
|
+
parentAssortmentId: z.string().min(1).describe('ID of the parent assortment'),
|
|
9
|
+
childAssortmentId: z.string().min(1).describe('ID of the child assortment'),
|
|
10
|
+
tags: z.array(z.string().min(1)).default([]).describe('Tags for the link'),
|
|
11
|
+
};
|
|
12
|
+
|
|
13
|
+
export const AddAssortmentLinkZodSchema = z.object(AddAssortmentLinkSchema);
|
|
14
|
+
|
|
15
|
+
export type AddAssortmentLinkParams = z.infer<typeof AddAssortmentLinkZodSchema>;
|
|
16
|
+
|
|
17
|
+
export async function addAssortmentLinkHandler(context: Context, params: AddAssortmentLinkParams) {
|
|
18
|
+
const { parentAssortmentId, childAssortmentId, tags } = params;
|
|
19
|
+
const { modules, userId } = context;
|
|
20
|
+
|
|
21
|
+
try {
|
|
22
|
+
log('handler addAssortmentLink', {
|
|
23
|
+
userId,
|
|
24
|
+
parentAssortmentId,
|
|
25
|
+
childAssortmentId,
|
|
26
|
+
tags,
|
|
27
|
+
});
|
|
28
|
+
const parent = await getNormalizedAssortmentDetails({ assortmentId: parentAssortmentId }, context);
|
|
29
|
+
if (!parent)
|
|
30
|
+
throw new AssortmentNotFoundError({
|
|
31
|
+
assortmentId: parentAssortmentId,
|
|
32
|
+
});
|
|
33
|
+
const child = await getNormalizedAssortmentDetails({ assortmentId: childAssortmentId }, context);
|
|
34
|
+
if (!child)
|
|
35
|
+
throw new AssortmentNotFoundError({
|
|
36
|
+
assortmentId: childAssortmentId,
|
|
37
|
+
});
|
|
38
|
+
|
|
39
|
+
const result = await modules.assortments.links.create({
|
|
40
|
+
parentAssortmentId,
|
|
41
|
+
childAssortmentId,
|
|
42
|
+
tags,
|
|
43
|
+
} as any);
|
|
44
|
+
|
|
45
|
+
return {
|
|
46
|
+
content: [
|
|
47
|
+
{
|
|
48
|
+
type: 'text' as const,
|
|
49
|
+
text: JSON.stringify({ assortmentLink: { ...result, parent, child } }),
|
|
50
|
+
},
|
|
51
|
+
],
|
|
52
|
+
};
|
|
53
|
+
} catch (error) {
|
|
54
|
+
return {
|
|
55
|
+
content: [
|
|
56
|
+
{
|
|
57
|
+
type: 'text' as const,
|
|
58
|
+
text: `Error adding assortment link: ${(error as Error).message}`,
|
|
59
|
+
},
|
|
60
|
+
],
|
|
61
|
+
};
|
|
62
|
+
}
|
|
63
|
+
}
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
import { Context } from '../../../context.js';
|
|
3
|
+
import { log } from '@unchainedshop/logger';
|
|
4
|
+
import { FileNotFoundError, FileUploadExpiredError } from '../../../errors.js';
|
|
5
|
+
|
|
6
|
+
export const AddAssortmentMediaUploadSchema = {
|
|
7
|
+
mediaName: z
|
|
8
|
+
.string()
|
|
9
|
+
.min(1)
|
|
10
|
+
.describe('Name of the media file (e.g. "image.png") use random name if not provided'),
|
|
11
|
+
assortmentId: z.string().min(1).describe('ID of the assortment to link media to'),
|
|
12
|
+
url: z.string().describe('Anonymously fetchable URL of the source media, can be a data URL too'),
|
|
13
|
+
};
|
|
14
|
+
|
|
15
|
+
export const AddAssortmentMediaUploadZodSchema = z.object(AddAssortmentMediaUploadSchema);
|
|
16
|
+
|
|
17
|
+
export type AddAssortmentMediaUploadParams = z.infer<typeof AddAssortmentMediaUploadZodSchema>;
|
|
18
|
+
|
|
19
|
+
export async function addAssortmentMediaUploadHandler(
|
|
20
|
+
context: Context,
|
|
21
|
+
params: AddAssortmentMediaUploadParams,
|
|
22
|
+
) {
|
|
23
|
+
const { mediaName, assortmentId, url } = params;
|
|
24
|
+
const { modules, services, userId } = context;
|
|
25
|
+
|
|
26
|
+
try {
|
|
27
|
+
log('handler addAssortmentMediaUploadHandler', { mediaName, assortmentId, userId, url });
|
|
28
|
+
const {
|
|
29
|
+
_id: fileId,
|
|
30
|
+
putURL,
|
|
31
|
+
type,
|
|
32
|
+
size,
|
|
33
|
+
} = await services.files.createSignedURL({
|
|
34
|
+
directoryName: 'assortment-media',
|
|
35
|
+
fileName: mediaName,
|
|
36
|
+
meta: { assortmentId },
|
|
37
|
+
});
|
|
38
|
+
|
|
39
|
+
const sourceResponse = await fetch(url);
|
|
40
|
+
const uploadUrl = new URL(putURL, process.env.ROOT_URL || 'http://localhost:4010');
|
|
41
|
+
const uploadResponse = await fetch(uploadUrl, {
|
|
42
|
+
method: 'PUT',
|
|
43
|
+
body: sourceResponse.body,
|
|
44
|
+
duplex: 'half',
|
|
45
|
+
} as RequestInit);
|
|
46
|
+
|
|
47
|
+
if (!uploadResponse.ok) {
|
|
48
|
+
throw new Error(`Upload failed: ${uploadResponse.status} ${uploadResponse.statusText}`);
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
const file = await modules.files.findFile({ fileId });
|
|
52
|
+
if (!file) throw new FileNotFoundError({ fileId });
|
|
53
|
+
|
|
54
|
+
if (file.expires && new Date(file.expires).getTime() < Date.now()) {
|
|
55
|
+
throw new FileUploadExpiredError({ fileId });
|
|
56
|
+
}
|
|
57
|
+
const linked = await services.files.linkFile({ fileId, size, type });
|
|
58
|
+
|
|
59
|
+
return {
|
|
60
|
+
content: [
|
|
61
|
+
{
|
|
62
|
+
type: 'text' as const,
|
|
63
|
+
text: JSON.stringify({
|
|
64
|
+
file: linked,
|
|
65
|
+
}),
|
|
66
|
+
},
|
|
67
|
+
],
|
|
68
|
+
};
|
|
69
|
+
} catch (error) {
|
|
70
|
+
return {
|
|
71
|
+
content: [
|
|
72
|
+
{
|
|
73
|
+
type: 'text' as const,
|
|
74
|
+
text: `Error uploading Assortment media: ${(error as Error).message}`,
|
|
75
|
+
},
|
|
76
|
+
],
|
|
77
|
+
};
|
|
78
|
+
}
|
|
79
|
+
}
|