@evershop/evershop 1.0.0-rc.2 → 1.0.0-rc.3
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/bin/build/client/index.js +0 -1
- package/bin/install/createMigrationTable.js +9 -12
- package/bin/install/index.js +108 -29
- package/bin/install/migrate.js +19 -23
- package/bin/install/templates/config.json +5 -0
- package/bin/lib/bootstrap/migrate.js +36 -15
- package/bin/lib/buildEntry.js +5 -3
- package/package.json +3 -3
- package/src/components/admin/catalog/category/categoryEdit/AddProducts.jsx +173 -0
- package/src/components/admin/catalog/collection/collectionEdit/AddProducts.jsx +173 -0
- package/src/components/admin/catalog/productEdit/variants/{CreateVariantGroup.js → CreateVariantGroup.jsx} +9 -1
- package/src/components/admin/catalog/productEdit/variants/{SubmitButton.js → SubmitButton.jsx} +5 -0
- package/src/components/admin/catalog/productEdit/variants/{Variants.js → Variants.jsx} +3 -6
- package/src/components/admin/checkout/shippingSetting/Method.jsx +61 -0
- package/src/components/admin/checkout/shippingSetting/MethodForm.jsx +242 -0
- package/src/components/admin/checkout/shippingSetting/Methods.jsx +71 -0
- package/src/components/admin/checkout/shippingSetting/Zone.jsx +85 -0
- package/src/components/admin/checkout/shippingSetting/ZoneForm.jsx +141 -0
- package/src/components/admin/checkout/shippingSetting/Zones.jsx +43 -0
- package/src/components/admin/promotion/couponEdit/{RequireProducts.js → RequireProducts.jsx} +1 -1
- package/src/components/common/Spinner.jsx +31 -0
- package/src/components/common/context/{checkout.js → checkout.jsx} +18 -2
- package/src/components/common/form/Button.scss +0 -1
- package/src/components/common/form/{Form.js → Form.jsx} +12 -5
- package/src/components/common/form/fields/{Toggle.js → Toggle.jsx} +21 -13
- package/src/components/common/grid/rows/TextRow.jsx +10 -0
- package/src/components/common/modal/Alert.scss +11 -1
- package/src/components/common/modal/Modal.jsx +60 -0
- package/src/components/common/react/client/{Hydrate.js → Hydrate.jsx} +2 -6
- package/src/components/common/react/client/HydrateAdmin.jsx +11 -0
- package/src/components/common/react/client/HydrateFrontStore.jsx +11 -0
- package/src/components/common/react/client/Index.js +0 -22
- package/src/components/common/react/client/Index.jsx +22 -0
- package/src/components/frontStore/checkout/checkout/summary/{Cart.js → Cart.jsx} +2 -2
- package/src/components/frontStore/checkout/success/summary/order/{OrderSummary.js → OrderSummary.jsx} +4 -8
- package/src/lib/componee/scanForComponents.js +1 -1
- package/src/lib/componee/tests/unit/scanRouteComponents.test.js +20 -20
- package/src/lib/middleware/tests/app/modules/basecopy/api/global/context.js +1 -5
- package/src/lib/middleware/tests/app/modules/basecopy/pages/global/context.js +0 -5
- package/src/lib/{mysql → postgres}/connection.js +6 -6
- package/src/lib/router/buildUrl.js +6 -0
- package/src/lib/webpack/createBaseConfig.js +3 -2
- package/src/lib/webpack/dev/createConfigClient.js +17 -2
- package/src/lib/webpack/loaders/AreaLoader.js +1 -1
- package/src/lib/webpack/loaders/GraphQLAPILoader.js +15 -0
- package/src/lib/webpack/loaders/LayoutLoader.js +1 -1
- package/src/lib/webpack/loaders/{styleLoader.js → StyleLoader.js} +1 -1
- package/src/lib/webpack/loaders/TailwindLoader.js +4 -4
- package/src/lib/webpack/prod/createConfigClient.js +1 -1
- package/src/lib/webpack/prod/createConfigServer.js +3 -3
- package/src/modules/auth/api/createAdminUserSession/logIn.js +3 -3
- package/src/modules/auth/api/deleteAdminUserSession/logout.js +2 -2
- package/src/modules/auth/api/global/[context]userTokenVerify.js +2 -2
- package/src/modules/auth/graphql/types/AdminUser/AdminUser.resolvers.js +7 -6
- package/src/modules/auth/migration/Version-1.0.0.js +23 -25
- package/src/modules/auth/pages/admin/all/[context]userTokenVerify.js +3 -2
- package/src/modules/base/api/global/context.js +1 -1
- package/src/modules/base/graphql/types/Country/Country.resolvers.js +8 -4
- package/src/modules/base/graphql/types/DateTime/DateTime.graphql +3 -3
- package/src/modules/base/graphql/types/DateTime/DateTime.resolvers.js +3 -3
- package/src/modules/base/pages/global/context.js +1 -6
- package/src/modules/catalog/api/addProductToCategory/[context]bodyParser[auth].js +5 -0
- package/src/modules/catalog/api/addProductToCategory/addProducts.js +87 -0
- package/src/modules/catalog/api/addProductToCategory/payloadSchema.json +12 -0
- package/src/modules/catalog/api/addProductToCategory/route.json +5 -0
- package/src/modules/catalog/api/addProductToCollection/[context]bodyParser[auth].js +5 -0
- package/src/modules/catalog/api/addProductToCollection/addProducts.js +87 -0
- package/src/modules/catalog/api/addProductToCollection/payloadSchema.json +12 -0
- package/src/modules/catalog/api/addProductToCollection/route.json +5 -0
- package/src/modules/catalog/api/addVariantItem/[bodyParser]addItem.js +6 -6
- package/src/modules/catalog/api/createAttribute/[createAttribute]saveGroups[finish].js +2 -2
- package/src/modules/catalog/api/createAttribute/[createAttribute]saveOptions[finish].js +1 -1
- package/src/modules/catalog/api/createAttribute/[getConnection]createAttribute[finish].js +1 -1
- package/src/modules/catalog/api/createAttribute/finish[apiResponse].js +6 -2
- package/src/modules/catalog/api/createAttribute/getConnection[finish].js +2 -2
- package/src/modules/catalog/api/createAttributeGroup/[bodyParser]saveGroup.js +2 -2
- package/src/modules/catalog/api/createCategory/[getConnection]createCategory[finish].js +1 -1
- package/src/modules/catalog/api/createCategory/finish[apiResponse].js +8 -4
- package/src/modules/catalog/api/createCategory/getConnection[finish].js +2 -2
- package/src/modules/catalog/api/createCollection/[context]bodyParser[auth].js +5 -0
- package/src/modules/catalog/api/createCollection/[getConnection]createCollection[finish].js +8 -0
- package/src/modules/catalog/api/createCollection/finish[apiResponse].js +64 -0
- package/src/modules/catalog/api/createCollection/getConnection[finish].js +12 -0
- package/src/modules/catalog/api/createCollection/payloadSchema.json +20 -0
- package/src/modules/catalog/api/createCollection/route.json +5 -0
- package/src/modules/catalog/api/createProduct/[createProduct]saveAttributes[finish].js +16 -4
- package/src/modules/catalog/api/createProduct/[createProduct]saveCategories[finish].js +1 -1
- package/src/modules/catalog/api/createProduct/[createProduct]saveImages[finish].js +1 -1
- package/src/modules/catalog/api/createProduct/[createProduct]saveOptions[finish].js +1 -1
- package/src/modules/catalog/api/createProduct/[getConnection]createProduct[finish].js +2 -2
- package/src/modules/catalog/api/createProduct/finish[apiResponse].js +8 -4
- package/src/modules/catalog/api/createProduct/getConnection[finish].js +2 -2
- package/src/modules/catalog/api/createVariantGroup/[bodyParser]saveGroup.js +2 -2
- package/src/modules/catalog/api/deleteAttribute/deleteAttribute.js +2 -2
- package/src/modules/catalog/api/deleteAttributeGroup/deleteAttributeGroup.js +2 -2
- package/src/modules/catalog/api/deleteCategory/deleteCategory.js +2 -2
- package/src/modules/catalog/api/deleteCollection/deleteCollection.js +41 -0
- package/src/modules/catalog/api/deleteCollection/route.json +5 -0
- package/src/modules/catalog/api/deleteProduct/deleteProduct.js +2 -2
- package/src/modules/catalog/api/removeProductFromCategory/[context]bodyParser[auth].js +5 -0
- package/src/modules/catalog/api/removeProductFromCategory/removeProducts.js +71 -0
- package/src/modules/catalog/api/removeProductFromCategory/route.json +5 -0
- package/src/modules/catalog/api/removeProductFromCollection/[context]bodyParser[auth].js +5 -0
- package/src/modules/catalog/api/removeProductFromCollection/removeProducts.js +71 -0
- package/src/modules/catalog/api/removeProductFromCollection/route.json +5 -0
- package/src/modules/catalog/api/search/searchProducts[searchResponse].js +4 -4
- package/src/modules/catalog/api/unlinkVariant/unlinkVariants.js +2 -2
- package/src/modules/catalog/api/updateAttribute/[getConnection]updateAttribute[finish].js +2 -2
- package/src/modules/catalog/api/updateAttribute/[updateAttribute]saveGroups[finish].js +2 -2
- package/src/modules/catalog/api/updateAttribute/[updateAttribute]saveOptions[finish].js +1 -1
- package/src/modules/catalog/api/updateAttribute/finish[apiResponse].js +6 -2
- package/src/modules/catalog/api/updateAttribute/getConnection[finish].js +2 -2
- package/src/modules/catalog/api/updateAttributeGroup/[bodyParser]saveGroup.js +2 -2
- package/src/modules/catalog/api/updateCategory/[getConnection]updateCategory[finish].js +1 -1
- package/src/modules/catalog/api/updateCategory/finish[apiResponse].js +8 -4
- package/src/modules/catalog/api/updateCategory/getConnection[finish].js +2 -2
- package/src/modules/catalog/api/updateCollection/[context]bodyParser[auth].js +5 -0
- package/src/modules/catalog/api/updateCollection/[getConnection]updateCollection[finish].js +31 -0
- package/src/modules/catalog/api/updateCollection/finish[apiResponse].js +62 -0
- package/src/modules/catalog/api/updateCollection/getConnection[finish].js +12 -0
- package/src/modules/catalog/api/updateCollection/payloadSchema.json +15 -0
- package/src/modules/catalog/api/updateCollection/route.json +5 -0
- package/src/modules/catalog/api/updateProduct/[getConnection]updateProduct[finish].js +1 -1
- package/src/modules/catalog/api/updateProduct/[updateProduct]saveAttributes[finish].js +16 -4
- package/src/modules/catalog/api/updateProduct/[updateProduct]saveCategories[finish].js +2 -2
- package/src/modules/catalog/api/updateProduct/[updateProduct]saveImages[finish].js +1 -1
- package/src/modules/catalog/api/updateProduct/[updateProduct]saveOptions[finish].js +1 -1
- package/src/modules/catalog/api/updateProduct/finish[apiResponse].js +8 -4
- package/src/modules/catalog/api/updateProduct/getConnection[finish].js +2 -2
- package/src/modules/catalog/api/variantSearch/loadVariants.js +7 -11
- package/src/modules/catalog/graphql/types/Attribute/Attribute.resolvers.js +14 -15
- package/src/modules/catalog/graphql/types/Category/Category.graphql +6 -0
- package/src/modules/catalog/graphql/types/Category/Category.resolvers.js +124 -90
- package/src/modules/catalog/graphql/types/Collection/Collection.graphql +35 -0
- package/src/modules/catalog/graphql/types/Collection/Collection.resolvers.js +233 -0
- package/src/modules/catalog/graphql/types/FeaturedProduct/FeaturedProduct.resolvers.js +30 -16
- package/src/modules/catalog/graphql/types/Product/Attribute/ProductAttribute.resolvers.js +1 -1
- package/src/modules/catalog/graphql/types/Product/Image/ProductImage.resolvers.js +1 -1
- package/src/modules/catalog/graphql/types/Product/Inventory/Inventory.resolvers.js +2 -3
- package/src/modules/catalog/graphql/types/Product/Product.graphql +1 -0
- package/src/modules/catalog/graphql/types/Product/Product.resolvers.js +42 -5
- package/src/modules/catalog/graphql/types/Product/Variant/Variant.resolvers.js +13 -13
- package/src/modules/catalog/migration/Version-1.0.0.js +481 -271
- package/src/modules/catalog/pages/admin/all/{CatalogMenuGroup.js → CatalogMenuGroup.jsx} +11 -2
- package/src/modules/catalog/pages/admin/attributeEdit/index.js +3 -3
- package/src/modules/catalog/pages/admin/attributeEdit+attributeNew/{General.js → General.jsx} +2 -2
- package/src/modules/catalog/pages/admin/categoryEdit/Products.jsx +275 -0
- package/src/modules/catalog/pages/admin/categoryEdit/Products.scss +48 -0
- package/src/modules/catalog/pages/admin/categoryEdit/index.js +5 -5
- package/src/modules/catalog/pages/admin/collectionEdit/CollectionEditForm.jsx +52 -0
- package/src/modules/catalog/pages/admin/collectionEdit/Products.jsx +276 -0
- package/src/modules/catalog/pages/admin/collectionEdit/Products.scss +48 -0
- package/src/modules/catalog/pages/admin/collectionEdit/index.js +28 -0
- package/src/modules/catalog/pages/admin/collectionEdit/route.json +4 -0
- package/src/modules/catalog/pages/admin/collectionEdit+collectionNew/FormContent.jsx +53 -0
- package/src/modules/catalog/pages/admin/collectionEdit+collectionNew/FormContent.scss +7 -0
- package/src/modules/catalog/pages/admin/collectionEdit+collectionNew/General.jsx +116 -0
- package/src/modules/catalog/pages/admin/collectionEdit+collectionNew/PageHeading.jsx +39 -0
- package/src/modules/catalog/pages/admin/collectionGrid/Grid.jsx +290 -0
- package/src/modules/catalog/pages/admin/collectionGrid/Heading.jsx +13 -0
- package/src/modules/catalog/pages/admin/collectionGrid/NameRow.jsx +25 -0
- package/src/modules/catalog/pages/admin/collectionGrid/NewCollectionButton.jsx +22 -0
- package/src/modules/catalog/pages/admin/collectionGrid/index.js +15 -0
- package/src/modules/catalog/pages/admin/collectionGrid/route.json +4 -0
- package/src/modules/catalog/pages/admin/collectionNew/CollectionNewForm.jsx +60 -0
- package/src/modules/catalog/pages/admin/collectionNew/index.js +11 -0
- package/src/modules/catalog/pages/admin/collectionNew/route.json +4 -0
- package/src/modules/catalog/pages/admin/productEdit/Collection.jsx +58 -0
- package/src/modules/catalog/pages/admin/productEdit/index.js +5 -5
- package/src/modules/catalog/pages/frontStore/categoryView/[index]filters.js +2 -2
- package/src/modules/catalog/pages/frontStore/categoryView/index.js +5 -5
- package/src/modules/catalog/pages/frontStore/homepage/FeaturedProducts.jsx +89 -0
- package/src/modules/catalog/pages/frontStore/productView/index.js +14 -18
- package/src/modules/catalog/services/getFilterableAttributes.js +17 -15
- package/src/modules/catalog/services/getPriceRange.js +7 -5
- package/src/modules/catalog/services/getProductsByCategoryBaseQuery.js +35 -0
- package/src/modules/checkout/api/addCartAddress/saveAddress.js +33 -2
- package/src/modules/checkout/api/addCartItem/addItemToCart.js +2 -2
- package/src/modules/checkout/api/addCartPaymentMethod/savePaymentMethod.js +1 -2
- package/src/modules/checkout/api/addMineCartItem/[detectCurrentCart]addItemToCart.js +2 -2
- package/src/modules/checkout/api/addShippingZoneMethod/[context]borderParser[auth].js +5 -0
- package/src/modules/checkout/api/addShippingZoneMethod/addShippingZoneMethod.js +125 -0
- package/src/modules/checkout/api/addShippingZoneMethod/payloadSchema.json +40 -0
- package/src/modules/checkout/api/addShippingZoneMethod/route.json +5 -0
- package/src/modules/checkout/api/bestsellers/loadData.js +20 -13
- package/src/modules/checkout/api/bestsellers/route.json +1 -1
- package/src/modules/checkout/api/createCustomerSession/[login]addCustomerToCart.js +2 -2
- package/src/modules/checkout/api/createOrder/placeOrder.js +2 -2
- package/src/modules/checkout/api/createShipment/createShipment.js +2 -2
- package/src/modules/checkout/api/createShippingMethod/[context]borderParser[auth].js +5 -0
- package/src/modules/checkout/api/createShippingMethod/createShippingMethod.js +60 -0
- package/src/modules/checkout/api/createShippingMethod/payloadSchema.json +12 -0
- package/src/modules/checkout/api/createShippingMethod/route.json +5 -0
- package/src/modules/checkout/api/createShippingZone/[context]borderParser[auth].js +5 -0
- package/src/modules/checkout/api/createShippingZone/createShippingZone.js +57 -0
- package/src/modules/checkout/api/createShippingZone/payloadSchema.json +22 -0
- package/src/modules/checkout/api/createShippingZone/route.json +5 -0
- package/src/modules/checkout/api/getShippingMethods/route.json +1 -1
- package/src/modules/checkout/api/getShippingMethods/sendMethods.js +137 -14
- package/src/modules/checkout/api/lifetimesales/loadData.js +2 -2
- package/src/modules/checkout/api/lifetimesales/route.json +1 -1
- package/src/modules/checkout/api/salestatistic/loadData.js +2 -2
- package/src/modules/checkout/api/testShippingCostApi/loadData.js +11 -0
- package/src/modules/checkout/api/testShippingCostApi/route.json +5 -0
- package/src/modules/checkout/api/updateShipment/updateShipment.js +2 -2
- package/src/modules/checkout/api/updateShippingZone/[context]borderParser[auth].js +5 -0
- package/src/modules/checkout/api/updateShippingZone/payloadSchema.json +22 -0
- package/src/modules/checkout/api/updateShippingZone/route.json +5 -0
- package/src/modules/checkout/api/updateShippingZone/updateShippingZone.js +93 -0
- package/src/modules/checkout/api/updateShippingZoneMethod/[context]borderParser[auth].js +5 -0
- package/src/modules/checkout/api/updateShippingZoneMethod/payloadSchema.json +37 -0
- package/src/modules/checkout/api/updateShippingZoneMethod/route.json +5 -0
- package/src/modules/checkout/api/updateShippingZoneMethod/updateShippingZoneMethod.js +110 -0
- package/src/modules/checkout/graphql/types/BestSeller/BestSeller.resolvers.js +9 -12
- package/src/modules/checkout/graphql/types/Cart/Cart.resolvers.js +1 -1
- package/src/modules/checkout/graphql/types/Order/Order.resolvers.js +13 -12
- package/src/modules/checkout/graphql/types/PaymentTransaction/PaymentTransaction.resolvers.js +1 -1
- package/src/modules/checkout/graphql/types/ShippingMethod/ShippingMethod.graphql +12 -0
- package/src/modules/checkout/graphql/types/ShippingMethod/ShippingMethod.resolvers.js +15 -0
- package/src/modules/checkout/graphql/types/ShippingZone/ShippingZone.graphql +36 -0
- package/src/modules/checkout/graphql/types/ShippingZone/ShippingZone.resolvers.js +69 -0
- package/src/modules/checkout/migration/Version-1.0.0.js +230 -196
- package/src/modules/checkout/migration/Version-1.0.1.js +50 -71
- package/src/modules/checkout/pages/admin/orderEdit/{Payment.js → Payment.jsx} +7 -3
- package/src/modules/checkout/pages/admin/orderEdit/index.js +3 -3
- package/src/modules/checkout/pages/admin/shippingSetting/ShippingSetting.jsx +164 -0
- package/src/modules/{setting → checkout}/pages/admin/shippingSetting/index.js +2 -2
- package/src/modules/checkout/pages/frontStore/all/[customerTokenVerify]detectCurrentCart[auth].js +2 -2
- package/src/modules/checkout/pages/frontStore/checkout/{ShippingMethods.js → ShippingMethods.jsx} +26 -26
- package/src/modules/checkout/pages/frontStore/checkout/{Summary.js → Summary.jsx} +23 -2
- package/src/modules/checkout/pages/frontStore/checkout/index.js +1 -0
- package/src/modules/checkout/pages/frontStore/checkoutSuccess/{Summary.js → Summary.jsx} +2 -4
- package/src/modules/checkout/pages/frontStore/checkoutSuccess/index.js +2 -2
- package/src/modules/checkout/services/cart/Cart.js +210 -14
- package/src/modules/checkout/services/cart/DataObject.js +4 -1
- package/src/modules/checkout/services/cart/Item.js +13 -17
- package/src/modules/checkout/services/getCartById.js +2 -2
- package/src/modules/checkout/services/getCartByUUID.js +2 -2
- package/src/modules/checkout/services/getCustomerCart.js +2 -2
- package/src/modules/checkout/services/orderCreator.js +2 -2
- package/src/modules/checkout/services/saveCart.js +2 -2
- package/src/modules/checkout/services/toPrice.js +11 -2
- package/src/modules/cms/api/createCmsPage/[getConnection]createPage[finish].js +1 -1
- package/src/modules/cms/api/createCmsPage/finish[apiResponse].js +8 -4
- package/src/modules/cms/api/createCmsPage/getConnection.js +2 -2
- package/src/modules/cms/api/deleteCmsPage/deleteCmsPage.js +4 -4
- package/src/modules/cms/api/updateCmsPage/[getConnection]updatePage[finish].js +1 -1
- package/src/modules/cms/api/updateCmsPage/finish[apiResponse].js +8 -4
- package/src/modules/cms/api/updateCmsPage/getConnection.js +2 -2
- package/src/modules/cms/graphql/types/CmsPage/CmsPage.resolvers.js +11 -10
- package/src/modules/cms/graphql/types/Menu/Menu.resolvers.js +6 -6
- package/src/modules/cms/migration/Version-1.0.0.js +27 -25
- package/src/modules/cms/pages/admin/cmsPageEdit/index.js +5 -5
- package/src/modules/cms/pages/frontStore/cmsPageView/index.js +5 -5
- package/src/modules/cod/api/codCapturePayment/[bodyParser]capture.js +2 -2
- package/src/modules/customer/api/createCustomer/[bodyParser]createCustomer.js +2 -2
- package/src/modules/customer/api/createCustomerSession/[bodyParser,customerTokenVerify]login.js +3 -3
- package/src/modules/customer/api/deleteCustomer/deleteCustomer.js +2 -2
- package/src/modules/customer/api/deleteCustomerSession/logout.js +2 -2
- package/src/modules/customer/api/updateCustomer/updateCustomer.js +2 -2
- package/src/modules/customer/graphql/types/Customer/Customer.resolvers.js +10 -9
- package/src/modules/customer/graphql/types/CustomerGroup/CustomerGroup.resolvers.js +3 -3
- package/src/modules/customer/migration/Version-1.0.0.js +106 -37
- package/src/modules/customer/pages/admin/customerEdit/index.js +3 -3
- package/src/modules/customer/pages/frontStore/all/[context]customerTokenVerify.js +2 -2
- package/src/modules/graphql/api/adminGraphql/[bodyParser]graphql.js +3 -0
- package/src/modules/graphql/api/adminGraphql/[context]bodyParser[auth].js +5 -0
- package/src/modules/graphql/api/adminGraphql/route.json +5 -0
- package/src/modules/graphql/api/graphql/[userTokenVerify]removeUser[graphql].js +8 -0
- package/src/modules/paypal/api/paypalAuthorizePayment/[bodyParser]authorize.js +2 -2
- package/src/modules/paypal/api/paypalCapturePayment/[bodyParser]capture.js +2 -2
- package/src/modules/paypal/api/paypalCreateOrder/[bodyParser]createOrder.js +4 -5
- package/src/modules/paypal/api/paypalGetAccessToken/[bodyParser]getAccessToken.js +2 -2
- package/src/modules/paypal/pages/frontStore/paypalCancel/index.js +2 -2
- package/src/modules/paypal/pages/frontStore/paypalReturn/index.js +2 -2
- package/src/modules/promotion/api/createCoupon/[getConnection]createCoupon[finish].js +1 -1
- package/src/modules/promotion/api/createCoupon/finish[apiResponse].js +6 -2
- package/src/modules/promotion/api/createCoupon/getConnection[finish].js +2 -2
- package/src/modules/promotion/api/deleteCoupon/deleteCoupon.js +2 -2
- package/src/modules/promotion/api/updateCoupon/[getConnection]updateCoupon[finish].js +1 -1
- package/src/modules/promotion/api/updateCoupon/finish[apiResponse].js +6 -2
- package/src/modules/promotion/api/updateCoupon/getConnection[finish].js +2 -2
- package/src/modules/promotion/bootstrap.js +5 -0
- package/src/modules/promotion/graphql/types/Coupon/Coupon.graphql +2 -2
- package/src/modules/promotion/graphql/types/Coupon/Coupon.resolvers.js +14 -13
- package/src/modules/promotion/migration/Version-1.0.0.js +43 -29
- package/src/modules/promotion/pages/admin/couponEdit/index.js +3 -3
- package/src/modules/promotion/pages/admin/couponEdit+couponNew/{General.js → General.jsx} +8 -4
- package/src/modules/promotion/pages/admin/couponGrid/{Grid.js → Grid.jsx} +15 -10
- package/src/modules/promotion/services/CouponValidator.js +22 -16
- package/src/modules/promotion/services/DiscountCalculator.js +2 -2
- package/src/modules/setting/api/saveSetting/saveSetting.js +6 -6
- package/src/modules/setting/graphql/types/Setting/Setting.resolvers.js +1 -1
- package/src/modules/setting/graphql/types/ShippingSetting/ShippingSetting.resolvers.js +4 -7
- package/src/modules/setting/graphql/types/StoreSetting/StoreSetting.resolvers.js +6 -14
- package/src/modules/setting/migration/Version-1.0.0.js +10 -11
- package/src/modules/setting/pages/admin/storeSetting/{StoreSetting.js → StoreSetting.jsx} +3 -11
- package/src/modules/setting/services/setting.js +2 -2
- package/src/modules/stripe/api/createPaymentIntent/createPaymentIntent.js +2 -2
- package/src/modules/stripe/api/stripeWebHook/[bodyJson]webhook.js +2 -2
- package/src/modules/auth/migration/Version-1.0.1.js +0 -34
- package/src/modules/catalog/graphql/types/FeaturedCategory/FeaturedCategory.graphql +0 -3
- package/src/modules/catalog/graphql/types/FeaturedCategory/FeaturedCategory.resolvers.js +0 -34
- package/src/modules/catalog/migration/Version-1.0.1.js +0 -13
- package/src/modules/catalog/migration/Version-1.0.2.js +0 -209
- package/src/modules/catalog/pages/frontStore/homepage/FeaturedProducts.js +0 -74
- package/src/modules/catalog/services/getProductsBaseQuery.js +0 -26
- package/src/modules/cms/migration/Version-1.0.1.js +0 -18
- package/src/modules/customer/migration/Version-1.0.1.js +0 -32
- package/src/modules/paypal/migration/Version-1.0.0.js +0 -9
- package/src/modules/promotion/migration/Version-1.0.1.js +0 -17
- package/src/modules/setting/migration/Version-1.0.1.js +0 -21
- package/src/modules/setting/pages/admin/shippingSetting/ShippingSetting.js +0 -130
- /package/src/components/admin/auth/{AuthContext.js → AuthContext.jsx} +0 -0
- /package/src/components/admin/catalog/attributeGrid/headers/{GroupHeader.js → GroupHeader.jsx} +0 -0
- /package/src/components/admin/catalog/attributeGrid/rows/{AttributeName.js → AttributeName.jsx} +0 -0
- /package/src/components/admin/catalog/attributeGrid/rows/{GroupRow.js → GroupRow.jsx} +0 -0
- /package/src/components/admin/catalog/categoryGrid/rows/{CategoryName.js → CategoryName.jsx} +0 -0
- /package/src/components/admin/catalog/productEdit/media/{ProductMediaManager.js → ProductMediaManager.jsx} +0 -0
- /package/src/components/admin/catalog/productEdit/variants/{CreateVariant.js → CreateVariant.jsx} +0 -0
- /package/src/components/admin/catalog/productEdit/variants/{EditVariant.js → EditVariant.jsx} +0 -0
- /package/src/components/admin/catalog/productEdit/variants/{New.js → New.jsx} +0 -0
- /package/src/components/admin/catalog/productEdit/variants/{Search.js → Search.jsx} +0 -0
- /package/src/components/admin/catalog/productEdit/variants/{SearchModal.js → SearchModal.jsx} +0 -0
- /package/src/components/admin/catalog/productEdit/variants/{Variant.js → Variant.jsx} +0 -0
- /package/src/components/admin/catalog/productEdit/variants/{VariantModal.js → VariantModal.jsx} +0 -0
- /package/src/components/admin/catalog/productEdit/variants/{VariantType.js → VariantType.jsx} +0 -0
- /package/src/components/admin/catalog/productGrid/rows/{PriceRow.js → PriceRow.jsx} +0 -0
- /package/src/components/admin/catalog/productGrid/rows/{ProductName.js → ProductName.jsx} +0 -0
- /package/src/components/admin/catalog/productGrid/rows/{QtyRow.js → QtyRow.jsx} +0 -0
- /package/src/components/admin/catalog/productGrid/rows/{ThumbnailRow.js → ThumbnailRow.jsx} +0 -0
- /package/src/components/admin/checkout/orderEdit/{Shipment.js → Shipment.jsx} +0 -0
- /package/src/components/admin/checkout/orderEdit/items/{AddTrackingButton.js → AddTrackingButton.jsx} +0 -0
- /package/src/components/admin/checkout/orderEdit/items/{FullfillButton.js → FullfillButton.jsx} +0 -0
- /package/src/components/admin/checkout/orderEdit/items/{ItemOptions.js → ItemOptions.jsx} +0 -0
- /package/src/components/admin/checkout/orderEdit/items/{Name.js → Name.jsx} +0 -0
- /package/src/components/admin/checkout/orderEdit/items/{Price.js → Price.jsx} +0 -0
- /package/src/components/admin/checkout/orderEdit/items/{Thumbnail.js → Thumbnail.jsx} +0 -0
- /package/src/components/admin/checkout/orderEdit/items/{TrackingButton.js → TrackingButton.jsx} +0 -0
- /package/src/components/admin/checkout/orderEdit/payment/{Discount.js → Discount.jsx} +0 -0
- /package/src/components/admin/checkout/orderEdit/payment/{Shipping.js → Shipping.jsx} +0 -0
- /package/src/components/admin/checkout/orderEdit/payment/{SubTotal.js → SubTotal.jsx} +0 -0
- /package/src/components/admin/checkout/orderEdit/payment/{Tax.js → Tax.jsx} +0 -0
- /package/src/components/admin/checkout/orderEdit/payment/{Total.js → Total.jsx} +0 -0
- /package/src/components/admin/checkout/orderEdit/payment/{Transactions.js → Transactions.jsx} +0 -0
- /package/src/components/admin/checkout/orderGrid/headers/{OrderDateColumnHeader.js → OrderDateColumnHeader.jsx} +0 -0
- /package/src/components/admin/checkout/orderGrid/headers/{PaymentStatusColumnHeader.js → PaymentStatusColumnHeader.jsx} +0 -0
- /package/src/components/admin/checkout/orderGrid/headers/{ShipmentStatusColumnHeader.js → ShipmentStatusColumnHeader.jsx} +0 -0
- /package/src/components/admin/checkout/orderGrid/rows/{OrderNumberRow.js → OrderNumberRow.jsx} +0 -0
- /package/src/components/admin/checkout/orderGrid/rows/{PaymentStatus.js → PaymentStatus.jsx} +0 -0
- /package/src/components/admin/checkout/orderGrid/rows/{ShipmentStatus.js → ShipmentStatus.jsx} +0 -0
- /package/src/components/admin/checkout/orderGrid/rows/{TotalRow.js → TotalRow.jsx} +0 -0
- /package/src/components/admin/cms/{Card.js → Card.jsx} +0 -0
- /package/src/components/admin/cms/{Dot.js → Dot.jsx} +0 -0
- /package/src/components/admin/cms/{NavigationItem.js → NavigationItem.jsx} +0 -0
- /package/src/components/admin/cms/{NavigationItemGroup.js → NavigationItemGroup.jsx} +0 -0
- /package/src/components/admin/cms/{PageHeading.js → PageHeading.jsx} +0 -0
- /package/src/components/admin/cms/{Title.js → Title.jsx} +0 -0
- /package/src/components/admin/cms/cmsPageGrid/rows/{NameRow.js → NameRow.jsx} +0 -0
- /package/src/components/admin/cms/cmsPageGrid/rows/{PageName.js → PageName.jsx} +0 -0
- /package/src/components/admin/cms/navigation/{DashboardMenuItem.js → DashboardMenuItem.jsx} +0 -0
- /package/src/components/admin/cms/navigation/{PagesMenuItem.js → PagesMenuItem.jsx} +0 -0
- /package/src/components/admin/customer/customerGrid/rows/{CreateAt.js → CreateAt.jsx} +0 -0
- /package/src/components/admin/customer/customerGrid/rows/{CustomerName.js → CustomerName.jsx} +0 -0
- /package/src/components/admin/promotion/couponEdit/{BuyXGetY.js → BuyXGetY.jsx} +0 -0
- /package/src/components/admin/promotion/couponEdit/{Setting.js → Setting.jsx} +0 -0
- /package/src/components/admin/promotion/couponEdit/{TargetProduct.js → TargetProduct.jsx} +0 -0
- /package/src/components/admin/promotion/couponGrid/rows/{CouponName.js → CouponName.jsx} +0 -0
- /package/src/components/admin/setting/{SettingMenu.js → SettingMenu.jsx} +0 -0
- /package/src/components/common/{Area.js → Area.jsx} +0 -0
- /package/src/components/common/{Badge.js → Badge.jsx} +0 -0
- /package/src/components/common/{Body.js → Body.jsx} +0 -0
- /package/src/components/common/{BundleCss.js → BundleCss.jsx} +0 -0
- /package/src/components/common/{BundleJs.js → BundleJs.jsx} +0 -0
- /package/src/components/common/{CKEditor.js → CKEditor.jsx} +0 -0
- /package/src/components/common/{Circle.js → Circle.jsx} +0 -0
- /package/src/components/common/{Dot.js → Dot.jsx} +0 -0
- /package/src/components/common/{Link.js → Link.jsx} +0 -0
- /package/src/components/common/{LoadingBar.js → LoadingBar.jsx} +0 -0
- /package/src/components/common/{Meta.js → Meta.jsx} +0 -0
- /package/src/components/common/{Notification.js → Notification.jsx} +0 -0
- /package/src/components/common/{Off.js → Off.jsx} +0 -0
- /package/src/components/common/{On.js → On.jsx} +0 -0
- /package/src/components/common/{Script.js → Script.jsx} +0 -0
- /package/src/components/common/{Title.js → Title.jsx} +0 -0
- /package/src/components/common/context/{app.js → app.jsx} +0 -0
- /package/src/components/common/context/{checkoutSteps.js → checkoutSteps.jsx} +0 -0
- /package/src/components/common/form/{Button.js → Button.jsx} +0 -0
- /package/src/components/common/form/{Field.js → Field.jsx} +0 -0
- /package/src/components/common/form/fields/{Checkbox.js → Checkbox.jsx} +0 -0
- /package/src/components/common/form/fields/{Ckeditor.js → Ckeditor.jsx} +0 -0
- /package/src/components/common/form/fields/{Date.js → Date.jsx} +0 -0
- /package/src/components/common/form/fields/{DateTime.js → DateTime.jsx} +0 -0
- /package/src/components/common/form/fields/{Error.js → Error.jsx} +0 -0
- /package/src/components/common/form/fields/{Flatpickr.js → Flatpickr.jsx} +0 -0
- /package/src/components/common/form/fields/{Hidden.js → Hidden.jsx} +0 -0
- /package/src/components/common/form/fields/{Input.js → Input.jsx} +0 -0
- /package/src/components/common/form/fields/{MultiSelect.js → MultiSelect.jsx} +0 -0
- /package/src/components/common/form/fields/{Password.js → Password.jsx} +0 -0
- /package/src/components/common/form/fields/{Radio.js → Radio.jsx} +0 -0
- /package/src/components/common/form/fields/{Select.js → Select.jsx} +0 -0
- /package/src/components/common/form/fields/{Textarea.js → Textarea.jsx} +0 -0
- /package/src/components/common/grid/{Pagination.js → Pagination.jsx} +0 -0
- /package/src/components/common/grid/headers/{Action.js → Action.jsx} +0 -0
- /package/src/components/common/grid/headers/{Basic.js → Basic.jsx} +0 -0
- /package/src/components/common/grid/headers/{Dropdown.js → Dropdown.jsx} +0 -0
- /package/src/components/common/grid/headers/{Dummy.js → Dummy.jsx} +0 -0
- /package/src/components/common/grid/headers/{FromTo.js → FromTo.jsx} +0 -0
- /package/src/components/common/grid/headers/{Status.js → Status.jsx} +0 -0
- /package/src/components/common/grid/rows/{ActionRow.js → ActionRow.jsx} +0 -0
- /package/src/components/common/grid/rows/{BasicRow.js → BasicRow.jsx} +0 -0
- /package/src/components/common/grid/rows/{DateRow.js → DateRow.jsx} +0 -0
- /package/src/components/common/grid/rows/{PriceRow.js → PriceRow.jsx} +0 -0
- /package/src/components/common/grid/rows/{StatusRow.js → StatusRow.jsx} +0 -0
- /package/src/components/common/grid/rows/{ThumbnailRow.js → ThumbnailRow.jsx} +0 -0
- /package/src/components/common/grid/rows/{YesNoRow.js → YesNoRow.jsx} +0 -0
- /package/src/components/common/locale/{CountryOption.js → CountryOption.jsx} +0 -0
- /package/src/components/common/locale/{CurrencyOption.js → CurrencyOption.jsx} +0 -0
- /package/src/components/common/locale/{LanguageOption.js → LanguageOption.jsx} +0 -0
- /package/src/components/common/locale/{ProvinceOption.js → ProvinceOption.jsx} +0 -0
- /package/src/components/common/locale/{TimezoneOption.js → TimezoneOption.jsx} +0 -0
- /package/src/components/common/modal/{Alert.js → Alert.jsx} +0 -0
- /package/src/components/common/react/{Head.js → Head.jsx} +0 -0
- /package/src/components/common/react/client/{Client.js → Client.jsx} +0 -0
- /package/src/components/common/react/client/{HotReload.js → HotReload.jsx} +0 -0
- /package/src/components/common/react/server/{Server.js → Server.jsx} +0 -0
- /package/src/components/common/react/server/{render.js → render.jsx} +0 -0
- /package/src/components/frontStore/catalog/categoryView/filter/{AttributeFilter.js → AttributeFilter.jsx} +0 -0
- /package/src/components/frontStore/catalog/categoryView/filter/{PriceFilter.js → PriceFilter.jsx} +0 -0
- /package/src/components/frontStore/catalog/product/list/{List.js → List.jsx} +0 -0
- /package/src/components/frontStore/catalog/product/list/{Pagination.js → Pagination.jsx} +0 -0
- /package/src/components/frontStore/catalog/product/list/item/{Name.js → Name.jsx} +0 -0
- /package/src/components/frontStore/catalog/product/list/item/{Price.js → Price.jsx} +0 -0
- /package/src/components/frontStore/catalog/product/list/item/{Thumbnail.js → Thumbnail.jsx} +0 -0
- /package/src/components/frontStore/catalog/product/single/{Name.js → Name.jsx} +0 -0
- /package/src/components/frontStore/catalog/product/single/{Price.js → Price.jsx} +0 -0
- /package/src/components/frontStore/catalog/product/single/{Sku.js → Sku.jsx} +0 -0
- /package/src/components/frontStore/checkout/cart/{Empty.js → Empty.jsx} +0 -0
- /package/src/components/frontStore/checkout/cart/items/{ItemOptions.js → ItemOptions.jsx} +0 -0
- /package/src/components/frontStore/checkout/cart/items/{ItemVariantOptions.js → ItemVariantOptions.jsx} +0 -0
- /package/src/components/frontStore/checkout/cart/items/{Items.js → Items.jsx} +0 -0
- /package/src/components/frontStore/checkout/checkout/{CheckoutButton.js → CheckoutButton.jsx} +0 -0
- /package/src/components/frontStore/checkout/checkout/{StepTitle.js → StepTitle.jsx} +0 -0
- /package/src/components/frontStore/checkout/checkout/payment/paymentMethods/{Methods.js → Methods.jsx} +0 -0
- /package/src/components/frontStore/checkout/checkout/payment/paymentStep/{BillingAddress.js → BillingAddress.jsx} +0 -0
- /package/src/components/frontStore/checkout/checkout/payment/paymentStep/{StepContent.js → StepContent.jsx} +0 -0
- /package/src/components/frontStore/checkout/checkout/shipment/{StepContent.js → StepContent.jsx} +0 -0
- /package/src/components/frontStore/checkout/checkout/summary/{Items.js → Items.jsx} +0 -0
- /package/src/components/frontStore/checkout/checkout/summary/cart/{Discount.js → Discount.jsx} +0 -0
- /package/src/components/frontStore/checkout/checkout/summary/cart/{Shipping.js → Shipping.jsx} +0 -0
- /package/src/components/frontStore/checkout/checkout/summary/cart/{Subtotal.js → Subtotal.jsx} +0 -0
- /package/src/components/frontStore/checkout/checkout/summary/cart/{Tax.js → Tax.jsx} +0 -0
- /package/src/components/frontStore/checkout/checkout/summary/cart/{Total.js → Total.jsx} +0 -0
- /package/src/components/frontStore/checkout/success/summary/items/{ItemOptions.js → ItemOptions.jsx} +0 -0
- /package/src/components/frontStore/checkout/success/summary/items/{Items.js → Items.jsx} +0 -0
- /package/src/components/frontStore/checkout/success/summary/order/{Discount.js → Discount.jsx} +0 -0
- /package/src/components/frontStore/checkout/success/summary/order/{Shipping.js → Shipping.jsx} +0 -0
- /package/src/components/frontStore/checkout/success/summary/order/{Subtotal.js → Subtotal.jsx} +0 -0
- /package/src/components/frontStore/checkout/success/summary/order/{Tax.js → Tax.jsx} +0 -0
- /package/src/components/frontStore/checkout/success/summary/order/{Total.js → Total.jsx} +0 -0
- /package/src/components/frontStore/cms/{Button.js → Button.jsx} +0 -0
- /package/src/components/frontStore/cms/{MetaDescription.js → MetaDescription.jsx} +0 -0
- /package/src/components/frontStore/cms/{MetaTitle.js → MetaTitle.jsx} +0 -0
- /package/src/components/frontStore/cod/{CODLogo.js → CODLogo.jsx} +0 -0
- /package/src/components/frontStore/customer/address/{AddressSummary.js → AddressSummary.jsx} +0 -0
- /package/src/components/frontStore/customer/address/addressForm/{AddressForm.js → AddressForm.jsx} +0 -0
- /package/src/components/frontStore/customer/address/addressForm/{AddressFormLoadingSkeleton.js → AddressFormLoadingSkeleton.jsx} +0 -0
- /package/src/components/frontStore/customer/address/addressForm/{Country.js → Country.jsx} +0 -0
- /package/src/components/frontStore/customer/address/addressForm/{Index.js → Index.jsx} +0 -0
- /package/src/components/frontStore/customer/address/addressForm/{NameAndTelephone.js → NameAndTelephone.jsx} +0 -0
- /package/src/components/frontStore/customer/address/addressForm/{Province.js → Province.jsx} +0 -0
- /package/src/components/frontStore/customer/address/addressForm/{ProvinceAndPostcode.js → ProvinceAndPostcode.jsx} +0 -0
- /package/src/components/frontStore/customer/checkout/{Edit.js → Edit.jsx} +0 -0
- /package/src/components/frontStore/customer/detail/{Order.js → Order.jsx} +0 -0
- /package/src/components/frontStore/paypal/{PaypalLogo.js → PaypalLogo.jsx} +0 -0
- /package/src/components/frontStore/stripe/{StripeLogo.js → StripeLogo.jsx} +0 -0
- /package/src/components/frontStore/stripe/checkout/{CheckoutForm.js → CheckoutForm.jsx} +0 -0
- /package/src/lib/componee/tests/unit/__mocks__/extensions/firstExtension/pages/frontStore/all/{Banner.js → Banner.jsx} +0 -0
- /package/src/lib/componee/tests/unit/__mocks__/extensions/firstExtension/pages/frontStore/all/{CommentList.js → CommentList.jsx} +0 -0
- /package/src/lib/componee/tests/unit/__mocks__/extensions/firstExtension/pages/frontStore/productView/{Attribute.js → Attribute.jsx} +0 -0
- /package/src/lib/componee/tests/unit/__mocks__/extensions/firstExtension/pages/frontStore/productView/{Comment.js → Comment.jsx} +0 -0
- /package/src/lib/componee/tests/unit/__mocks__/extensions/firstExtension/pages/frontStore/productView/{Name.js → Name.jsx} +0 -0
- /package/src/lib/componee/tests/unit/__mocks__/extensions/firstExtension/pages/frontStore/productView/{Price.js → Price.jsx} +0 -0
- /package/src/lib/componee/tests/unit/__mocks__/extensions/secondExtension/pages/frontStore/all/{CommentList.js → CommentList.jsx} +0 -0
- /package/src/lib/componee/tests/unit/__mocks__/extensions/secondExtension/pages/frontStore/productView/{Comment.js → Comment.jsx} +0 -0
- /package/src/lib/componee/tests/unit/__mocks__/extensions/secondExtension/pages/frontStore/productView/{Name.js → Name.jsx} +0 -0
- /package/src/lib/componee/tests/unit/__mocks__/extensions/secondExtension/pages/frontStore/productView/{Review.js → Review.jsx} +0 -0
- /package/src/lib/componee/tests/unit/__mocks__/modules/firstModule/pages/frontStore/all/{Menu.js → Menu.jsx} +0 -0
- /package/src/lib/componee/tests/unit/__mocks__/modules/firstModule/pages/frontStore/productView/{Name.js → Name.jsx} +0 -0
- /package/src/lib/componee/tests/unit/__mocks__/modules/firstModule/pages/frontStore/productView/{Price.js → Price.jsx} +0 -0
- /package/src/lib/componee/tests/unit/__mocks__/modules/secondModule/pages/frontStore/all/{Banner.js → Banner.jsx} +0 -0
- /package/src/lib/componee/tests/unit/__mocks__/modules/secondModule/pages/frontStore/productView/{Description.js → Description.jsx} +0 -0
- /package/src/lib/componee/tests/unit/__mocks__/modules/secondModule/pages/frontStore/productView/{Inventory.js → Inventory.jsx} +0 -0
- /package/src/lib/componee/tests/unit/__mocks__/modules/secondModule/pages/frontStore/productView/{Name.js → Name.jsx} +0 -0
- /package/src/lib/componee/tests/unit/__mocks__/themes/justatheme/pages/all/{CommentList.js → CommentList.jsx} +0 -0
- /package/src/lib/componee/tests/unit/__mocks__/themes/justatheme/pages/all/{Shipping.js → Shipping.jsx} +0 -0
- /package/src/lib/componee/tests/unit/__mocks__/themes/justatheme/pages/productView/{Name.js → Name.jsx} +0 -0
- /package/src/lib/componee/tests/unit/__mocks__/themes/justatheme/pages/productView/{OutOfStock.js → OutOfStock.jsx} +0 -0
- /package/src/lib/componee/tests/unit/__mocks__/themes/justatheme/pages/productView/{Price.js → Price.jsx} +0 -0
- /package/src/lib/webpack/tests/unit/extensions/extensionA/components/a/{A.js → A.jsx} +0 -0
- /package/src/lib/webpack/tests/unit/extensions/extensionA/components/b/{B.js → B.jsx} +0 -0
- /package/src/lib/webpack/tests/unit/extensions/extensionA/components/b/bb/{BB.js → BB.jsx} +0 -0
- /package/src/lib/webpack/tests/unit/extensions/extensionA/components/d/{D.js → D.jsx} +0 -0
- /package/src/lib/webpack/tests/unit/extensions/extensionA/components/d/dd/{DD.js → DD.jsx} +0 -0
- /package/src/lib/webpack/tests/unit/extensions/extensionB/components/a/{A.js → A.jsx} +0 -0
- /package/src/lib/webpack/tests/unit/extensions/extensionB/components/d/{D.js → D.jsx} +0 -0
- /package/src/lib/webpack/tests/unit/extensions/extensionB/components/d/dd/{DD.js → DD.jsx} +0 -0
- /package/src/lib/webpack/tests/unit/extensions/extensionB/components/e/{E.js → E.jsx} +0 -0
- /package/src/lib/webpack/tests/unit/extensions/extensionB/components/e/ee/{EE.js → EE.jsx} +0 -0
- /package/src/lib/webpack/tests/unit/theme/components/a/{A.js → A.jsx} +0 -0
- /package/src/lib/webpack/tests/unit/theme/components/b/{B.js → B.jsx} +0 -0
- /package/src/lib/webpack/tests/unit/theme/components/b/bb/{BB.js → BB.jsx} +0 -0
- /package/src/modules/auth/pages/admin/adminLogin/{LoginForm.js → LoginForm.jsx} +0 -0
- /package/src/modules/auth/pages/admin/all/{AdminUser.js → AdminUser.jsx} +0 -0
- /package/src/modules/catalog/pages/admin/all/{NewProductQuickLink.js → NewProductQuickLink.jsx} +0 -0
- /package/src/modules/catalog/pages/admin/attributeEdit/{AttributeEditForm.js → AttributeEditForm.jsx} +0 -0
- /package/src/modules/catalog/pages/admin/attributeEdit+attributeNew/{Avaibility.js → Avaibility.jsx} +0 -0
- /package/src/modules/catalog/pages/admin/attributeEdit+attributeNew/{FormContent.js → FormContent.jsx} +0 -0
- /package/src/modules/catalog/pages/admin/attributeEdit+attributeNew/{PageHeading.js → PageHeading.jsx} +0 -0
- /package/src/modules/catalog/pages/admin/attributeGrid/{Grid.js → Grid.jsx} +0 -0
- /package/src/modules/catalog/pages/admin/attributeGrid/{Heading.js → Heading.jsx} +0 -0
- /package/src/modules/catalog/pages/admin/attributeGrid/{NewAttributeButton.js → NewAttributeButton.jsx} +0 -0
- /package/src/modules/catalog/pages/admin/attributeGrid/{TypeRow.js → TypeRow.jsx} +0 -0
- /package/src/modules/catalog/pages/admin/attributeNew/{AttributeNewForm.js → AttributeNewForm.jsx} +0 -0
- /package/src/modules/catalog/pages/admin/categoryEdit/{CategoryEditForm.js → CategoryEditForm.jsx} +0 -0
- /package/src/modules/catalog/pages/admin/categoryEdit+categoryNew/{FormContent.js → FormContent.jsx} +0 -0
- /package/src/modules/catalog/pages/admin/categoryEdit+categoryNew/{General.js → General.jsx} +0 -0
- /package/src/modules/catalog/pages/admin/categoryEdit+categoryNew/{Image.js → Image.jsx} +0 -0
- /package/src/modules/catalog/pages/admin/categoryEdit+categoryNew/{PageHeading.js → PageHeading.jsx} +0 -0
- /package/src/modules/catalog/pages/admin/categoryEdit+categoryNew/{Seo.js → Seo.jsx} +0 -0
- /package/src/modules/catalog/pages/admin/categoryEdit+categoryNew/{Status.js → Status.jsx} +0 -0
- /package/src/modules/catalog/pages/admin/categoryGrid/{Grid.js → Grid.jsx} +0 -0
- /package/src/modules/catalog/pages/admin/categoryGrid/{Heading.js → Heading.jsx} +0 -0
- /package/src/modules/catalog/pages/admin/categoryGrid/{NameRow.js → NameRow.jsx} +0 -0
- /package/src/modules/catalog/pages/admin/categoryGrid/{NewCategoryButton.js → NewCategoryButton.jsx} +0 -0
- /package/src/modules/catalog/pages/admin/categoryNew/{CategoryNewForm.js → CategoryNewForm.jsx} +0 -0
- /package/src/modules/catalog/pages/admin/productEdit/{ProductEditForm.js → ProductEditForm.jsx} +0 -0
- /package/src/modules/catalog/pages/admin/productEdit/{VariantGroup.js → VariantGroup.jsx} +0 -0
- /package/src/modules/catalog/pages/admin/productEdit+productNew/{Attributes.js → Attributes.jsx} +0 -0
- /package/src/modules/catalog/pages/admin/productEdit+productNew/{FormContent.js → FormContent.jsx} +0 -0
- /package/src/modules/catalog/pages/admin/productEdit+productNew/{General.js → General.jsx} +0 -0
- /package/src/modules/catalog/pages/admin/productEdit+productNew/{Inventory.js → Inventory.jsx} +0 -0
- /package/src/modules/catalog/pages/admin/productEdit+productNew/{Media.js → Media.jsx} +0 -0
- /package/src/modules/catalog/pages/admin/productEdit+productNew/{PageHeading.js → PageHeading.jsx} +0 -0
- /package/src/modules/catalog/pages/admin/productEdit+productNew/{Seo.js → Seo.jsx} +0 -0
- /package/src/modules/catalog/pages/admin/productEdit+productNew/{Status.js → Status.jsx} +0 -0
- /package/src/modules/catalog/pages/admin/productGrid/{Grid.js → Grid.jsx} +0 -0
- /package/src/modules/catalog/pages/admin/productGrid/{Heading.js → Heading.jsx} +0 -0
- /package/src/modules/catalog/pages/admin/productGrid/{NewProductButton.js → NewProductButton.jsx} +0 -0
- /package/src/modules/catalog/pages/admin/productNew/{ProductNewForm.js → ProductNewForm.jsx} +0 -0
- /package/src/modules/catalog/pages/frontStore/categoryView/{CategoryView.js → CategoryView.jsx} +0 -0
- /package/src/modules/catalog/pages/frontStore/categoryView/{Filter.js → Filter.jsx} +0 -0
- /package/src/modules/catalog/pages/frontStore/categoryView/{General.js → General.jsx} +0 -0
- /package/src/modules/catalog/pages/frontStore/categoryView/{Pagination.js → Pagination.jsx} +0 -0
- /package/src/modules/catalog/pages/frontStore/categoryView/{Products.js → Products.jsx} +0 -0
- /package/src/modules/catalog/pages/frontStore/categoryView/{Sorting.js → Sorting.jsx} +0 -0
- /package/src/modules/catalog/pages/frontStore/homepage/{FeaturedCategories.js → FeaturedCategories.jsx} +0 -0
- /package/src/modules/catalog/pages/frontStore/productView/{Attributes.js → Attributes.jsx} +0 -0
- /package/src/modules/catalog/pages/frontStore/productView/{Description.js → Description.jsx} +0 -0
- /package/src/modules/catalog/pages/frontStore/productView/{Form.js → Form.jsx} +0 -0
- /package/src/modules/catalog/pages/frontStore/productView/{GeneralInfo.js → GeneralInfo.jsx} +0 -0
- /package/src/modules/catalog/pages/frontStore/productView/{Images.js → Images.jsx} +0 -0
- /package/src/modules/catalog/pages/frontStore/productView/{Layout.js → Layout.jsx} +0 -0
- /package/src/modules/catalog/pages/frontStore/productView/{Options.js → Options.jsx} +0 -0
- /package/src/modules/catalog/pages/frontStore/productView/{Variants.js → Variants.jsx} +0 -0
- /package/src/modules/checkout/pages/admin/all/{CheckoutMenuGroup.js → CheckoutMenuGroup.jsx} +0 -0
- /package/src/modules/{setting/pages/admin/all/ShippingSettingMenu.js → checkout/pages/admin/all/ShippingSettingMenu.jsx} +0 -0
- /package/src/modules/checkout/pages/admin/dashboard/{Bestcustomers.js → Bestcustomers.jsx} +0 -0
- /package/src/modules/checkout/pages/admin/dashboard/{Bestsellers.js → Bestsellers.jsx} +0 -0
- /package/src/modules/checkout/pages/admin/dashboard/{Lifetimesales.js → Lifetimesales.jsx} +0 -0
- /package/src/modules/checkout/pages/admin/dashboard/{Statistic.js → Statistic.jsx} +0 -0
- /package/src/modules/checkout/pages/admin/orderEdit/{Activities.js → Activities.jsx} +0 -0
- /package/src/modules/checkout/pages/admin/orderEdit/{Customer.js → Customer.jsx} +0 -0
- /package/src/modules/checkout/pages/admin/orderEdit/{CustomerNotes.js → CustomerNotes.jsx} +0 -0
- /package/src/modules/checkout/pages/admin/orderEdit/{Items.js → Items.jsx} +0 -0
- /package/src/modules/checkout/pages/admin/orderEdit/{Layout.js → Layout.jsx} +0 -0
- /package/src/modules/checkout/pages/admin/orderEdit/{PageHeading.js → PageHeading.jsx} +0 -0
- /package/src/modules/checkout/pages/admin/orderEdit/{PaymentStatus.js → PaymentStatus.jsx} +0 -0
- /package/src/modules/checkout/pages/admin/orderEdit/{ShipmentStatus.js → ShipmentStatus.jsx} +0 -0
- /package/src/modules/checkout/pages/admin/orderGrid/{Grid.js → Grid.jsx} +0 -0
- /package/src/modules/checkout/pages/admin/orderGrid/{Heading.js → Heading.jsx} +0 -0
- /package/src/modules/{setting → checkout}/pages/admin/shippingSetting/route.json +0 -0
- /package/src/modules/checkout/pages/frontStore/all/{MiniCart.js → MiniCart.jsx} +0 -0
- /package/src/modules/checkout/pages/frontStore/cart/{ShoppingCart.js → ShoppingCart.jsx} +0 -0
- /package/src/modules/checkout/pages/frontStore/cart/{Summary.js → Summary.jsx} +0 -0
- /package/src/modules/checkout/pages/frontStore/checkout/{Checkout.js → Checkout.jsx} +0 -0
- /package/src/modules/checkout/pages/frontStore/checkout/{PaymentMethods.js → PaymentMethods.jsx} +0 -0
- /package/src/modules/checkout/pages/frontStore/checkout/{PaymentStep.js → PaymentStep.jsx} +0 -0
- /package/src/modules/checkout/pages/frontStore/checkout/{ShipmentStep.js → ShipmentStep.jsx} +0 -0
- /package/src/modules/checkout/pages/frontStore/checkoutSuccess/{CheckoutSuccess.js → CheckoutSuccess.jsx} +0 -0
- /package/src/modules/checkout/pages/frontStore/checkoutSuccess/{CustomerInfo.js → CustomerInfo.jsx} +0 -0
- /package/src/modules/cms/pages/admin/adminNotFound/{Meta.js → Meta.jsx} +0 -0
- /package/src/modules/cms/pages/admin/adminNotFound/{NotFound.js → NotFound.jsx} +0 -0
- /package/src/modules/cms/pages/admin/all/{CmsMenuGroup.js → CmsMenuGroup.jsx} +0 -0
- /package/src/modules/cms/pages/admin/all/{Layout.js → Layout.jsx} +0 -0
- /package/src/modules/cms/pages/admin/all/{Logo.js → Logo.jsx} +0 -0
- /package/src/modules/cms/pages/admin/all/{Meta.js → Meta.jsx} +0 -0
- /package/src/modules/cms/pages/admin/all/{Navigation.js → Navigation.jsx} +0 -0
- /package/src/modules/cms/pages/admin/all/{Notification.js → Notification.jsx} +0 -0
- /package/src/modules/cms/pages/admin/all/{QuickLinks.js → QuickLinks.jsx} +0 -0
- /package/src/modules/cms/pages/admin/all/{SearchBox.js → SearchBox.jsx} +0 -0
- /package/src/modules/cms/pages/admin/all/search/{NoResult.js → NoResult.jsx} +0 -0
- /package/src/modules/cms/pages/admin/all/search/{Results.js → Results.jsx} +0 -0
- /package/src/modules/cms/pages/admin/cmsPageEdit/{PageEditForm.js → PageEditForm.jsx} +0 -0
- /package/src/modules/cms/pages/admin/cmsPageEdit+cmsPageNew/{FormContent.js → FormContent.jsx} +0 -0
- /package/src/modules/cms/pages/admin/cmsPageEdit+cmsPageNew/{General.js → General.jsx} +0 -0
- /package/src/modules/cms/pages/admin/cmsPageEdit+cmsPageNew/{PageHeading.js → PageHeading.jsx} +0 -0
- /package/src/modules/cms/pages/admin/cmsPageEdit+cmsPageNew/{Seo.js → Seo.jsx} +0 -0
- /package/src/modules/cms/pages/admin/cmsPageEdit+cmsPageNew/{StatusAndLayout.js → StatusAndLayout.jsx} +0 -0
- /package/src/modules/cms/pages/admin/cmsPageGrid/{Grid.js → Grid.jsx} +0 -0
- /package/src/modules/cms/pages/admin/cmsPageGrid/{Heading.js → Heading.jsx} +0 -0
- /package/src/modules/cms/pages/admin/cmsPageGrid/{NewPageButton.js → NewPageButton.jsx} +0 -0
- /package/src/modules/cms/pages/admin/cmsPageNew/{PageNewForm.js → PageNewForm.jsx} +0 -0
- /package/src/modules/cms/pages/admin/dashboard/{Layout.js → Layout.jsx} +0 -0
- /package/src/modules/cms/pages/admin/dashboard/{PageHeading.js → PageHeading.jsx} +0 -0
- /package/src/modules/cms/pages/frontStore/all/{Layout.js → Layout.jsx} +0 -0
- /package/src/modules/cms/pages/frontStore/all/{Logo.js → Logo.jsx} +0 -0
- /package/src/modules/cms/pages/frontStore/all/{Menu.js → Menu.jsx} +0 -0
- /package/src/modules/cms/pages/frontStore/all/{Meta.js → Meta.jsx} +0 -0
- /package/src/modules/cms/pages/frontStore/all/{MobileMenu.js → MobileMenu.jsx} +0 -0
- /package/src/modules/cms/pages/frontStore/all/{Notification.js → Notification.jsx} +0 -0
- /package/src/modules/cms/pages/frontStore/cmsPageView/{Layout.js → Layout.jsx} +0 -0
- /package/src/modules/cms/pages/frontStore/cmsPageView/{View.js → View.jsx} +0 -0
- /package/src/modules/cms/pages/frontStore/homepage/{MainBanner.js → MainBanner.jsx} +0 -0
- /package/src/modules/cms/pages/frontStore/notFound/{Meta.js → Meta.jsx} +0 -0
- /package/src/modules/cms/pages/frontStore/notFound/{NotFound.js → NotFound.jsx} +0 -0
- /package/src/modules/cod/pages/admin/orderEdit/{CaptureButton.js → CaptureButton.jsx} +0 -0
- /package/src/modules/cod/pages/admin/paymentSetting/{CODSetting.js → CODSetting.jsx} +0 -0
- /package/src/modules/cod/pages/frontStore/checkout/{CashOnDelivery.js → CashOnDelivery.jsx} +0 -0
- /package/src/modules/customer/pages/admin/all/{CustomerMenuGroup.js → CustomerMenuGroup.jsx} +0 -0
- /package/src/modules/customer/pages/admin/customerEdit/{CustomerEditForm.js → CustomerEditForm.jsx} +0 -0
- /package/src/modules/customer/pages/admin/customerEdit+customerNew/{General.js → General.jsx} +0 -0
- /package/src/modules/customer/pages/admin/customerEdit+customerNew/{OrderHistory.js → OrderHistory.jsx} +0 -0
- /package/src/modules/customer/pages/admin/customerEdit+customerNew/{PageHeading.js → PageHeading.jsx} +0 -0
- /package/src/modules/customer/pages/admin/customerGrid/{Grid.js → Grid.jsx} +0 -0
- /package/src/modules/customer/pages/admin/customerGrid/{Heading.js → Heading.jsx} +0 -0
- /package/src/modules/customer/pages/frontStore/account/{AccountDetails.js → AccountDetails.jsx} +0 -0
- /package/src/modules/customer/pages/frontStore/account/{Layout.js → Layout.jsx} +0 -0
- /package/src/modules/customer/pages/frontStore/account/{OrderHistory.js → OrderHistory.jsx} +0 -0
- /package/src/modules/customer/pages/frontStore/all/{UserIcon.js → UserIcon.jsx} +0 -0
- /package/src/modules/customer/pages/frontStore/checkout/{CustomerInfoStep.js → CustomerInfoStep.jsx} +0 -0
- /package/src/modules/customer/pages/frontStore/login/{LoginForm.js → LoginForm.jsx} +0 -0
- /package/src/modules/customer/pages/frontStore/register/{RegisterForm.js → RegisterForm.jsx} +0 -0
- /package/src/modules/paypal/pages/admin/paymentSetting/{PaypalSetting.js → PaypalSetting.jsx} +0 -0
- /package/src/modules/paypal/pages/frontStore/checkout/{Paypal.js → Paypal.jsx} +0 -0
- /package/src/modules/paypal/pages/frontStore/paypalReturn/{Error.js → Error.jsx} +0 -0
- /package/src/modules/promotion/pages/admin/all/{CouponMenuGroup.js → CouponMenuGroup.jsx} +0 -0
- /package/src/modules/promotion/pages/admin/all/{NewCouponQuickLink.js → NewCouponQuickLink.jsx} +0 -0
- /package/src/modules/promotion/pages/admin/couponEdit/{CouponEditForm.js → CouponEditForm.jsx} +0 -0
- /package/src/modules/promotion/pages/admin/couponEdit+couponNew/{CustomerCondition.js → CustomerCondition.jsx} +0 -0
- /package/src/modules/promotion/pages/admin/couponEdit+couponNew/{DiscountType.js → DiscountType.jsx} +0 -0
- /package/src/modules/promotion/pages/admin/couponEdit+couponNew/{FormContent.js → FormContent.jsx} +0 -0
- /package/src/modules/promotion/pages/admin/couponEdit+couponNew/{OrderCondition.js → OrderCondition.jsx} +0 -0
- /package/src/modules/promotion/pages/admin/couponEdit+couponNew/{PageHeading.js → PageHeading.jsx} +0 -0
- /package/src/modules/promotion/pages/admin/couponGrid/{Heading.js → Heading.jsx} +0 -0
- /package/src/modules/promotion/pages/admin/couponGrid/{NewCouponButton.js → NewCouponButton.jsx} +0 -0
- /package/src/modules/promotion/pages/admin/couponNew/{CouponNewForm.js → CouponNewForm.jsx} +0 -0
- /package/src/modules/promotion/pages/admin/navigation/{CouponNewMenuItem.js → CouponNewMenuItem.jsx} +0 -0
- /package/src/modules/promotion/pages/admin/navigation/{CouponsMenuItem.js → CouponsMenuItem.jsx} +0 -0
- /package/src/modules/promotion/pages/frontStore/cart/{Coupon.js → Coupon.jsx} +0 -0
- /package/src/modules/setting/pages/admin/all/{PaymentSettingMenu.js → PaymentSettingMenu.jsx} +0 -0
- /package/src/modules/setting/pages/admin/all/{SettingMenuGroup.js → SettingMenuGroup.jsx} +0 -0
- /package/src/modules/setting/pages/admin/all/{StoreSettingMenu.js → StoreSettingMenu.jsx} +0 -0
- /package/src/modules/setting/pages/admin/paymentSetting/{PaymentSetting.js → PaymentSetting.jsx} +0 -0
- /package/src/modules/setting/pages/admin/tax/{PaymentSetting.js → PaymentSetting.jsx} +0 -0
- /package/src/modules/stripe/pages/admin/paymentSetting/{StripePayment.js → StripePayment.jsx} +0 -0
- /package/src/modules/stripe/pages/frontStore/checkout/{Stripe.js → Stripe.jsx} +0 -0
|
@@ -1,20 +1,17 @@
|
|
|
1
|
-
const { execute } = require('@evershop/
|
|
1
|
+
const { execute } = require('@evershop/postgres-query-builder');
|
|
2
2
|
|
|
3
3
|
module.exports.createMigrationTable = async function createMigrationTable(
|
|
4
4
|
connection
|
|
5
5
|
) {
|
|
6
6
|
await execute(
|
|
7
7
|
connection,
|
|
8
|
-
`CREATE TABLE
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
UNIQUE KEY \`MODULE_UNIQUE\` (\`module\`)
|
|
17
|
-
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='Migration';
|
|
18
|
-
`
|
|
8
|
+
`CREATE TABLE "migration" (
|
|
9
|
+
"migration_id" INT GENERATED ALWAYS AS IDENTITY (START WITH 1 INCREMENT BY 1) PRIMARY KEY,
|
|
10
|
+
"module" varchar NOT NULL,
|
|
11
|
+
"version" varchar NOT NULL,
|
|
12
|
+
"created_at" TIMESTAMP WITH TIME ZONE DEFAULT CURRENT_TIMESTAMP,
|
|
13
|
+
"updated_at" TIMESTAMP WITH TIME ZONE DEFAULT CURRENT_TIMESTAMP,
|
|
14
|
+
CONSTRAINT "MODULE_UNIQUE" UNIQUE ("module")
|
|
15
|
+
)`
|
|
19
16
|
);
|
|
20
17
|
};
|
package/bin/install/index.js
CHANGED
|
@@ -5,19 +5,31 @@ const path = require('path');
|
|
|
5
5
|
const { red, green } = require('kleur');
|
|
6
6
|
const ora = require('ora');
|
|
7
7
|
const boxen = require('boxen');
|
|
8
|
-
const
|
|
9
|
-
const {
|
|
8
|
+
const { Pool } = require('pg');
|
|
9
|
+
const {
|
|
10
|
+
execute,
|
|
11
|
+
startTransaction,
|
|
12
|
+
commit,
|
|
13
|
+
rollback
|
|
14
|
+
} = require('@evershop/postgres-query-builder');
|
|
10
15
|
const { prompt } = require('enquirer');
|
|
11
16
|
const { CONSTANTS } = require('@evershop/evershop/src/lib/helpers');
|
|
12
17
|
const { migrate } = require('./migrate');
|
|
13
18
|
const { createMigrationTable } = require('./createMigrationTable');
|
|
14
19
|
|
|
15
|
-
function error(
|
|
16
|
-
|
|
20
|
+
function error(e) {
|
|
21
|
+
// Check if e is a string message
|
|
22
|
+
if (typeof e === 'string') {
|
|
23
|
+
// eslint-disable-next-line no-console
|
|
24
|
+
console.log(`\n❌ ${red(e)}\n`);
|
|
25
|
+
return;
|
|
26
|
+
} else {
|
|
27
|
+
// eslint-disable-next-line no-console
|
|
28
|
+
console.log(`\n❌ ${red(e.message)}\n${e.stack}`);
|
|
29
|
+
}
|
|
17
30
|
}
|
|
18
31
|
|
|
19
|
-
|
|
20
|
-
(async function () {
|
|
32
|
+
async function install() {
|
|
21
33
|
// eslint-disable-next-line no-var
|
|
22
34
|
var db;
|
|
23
35
|
// eslint-disable-next-line no-var
|
|
@@ -44,8 +56,8 @@ function error(message) {
|
|
|
44
56
|
{
|
|
45
57
|
type: 'input',
|
|
46
58
|
name: 'databasePort',
|
|
47
|
-
message: 'MySql Database Port (
|
|
48
|
-
initial:
|
|
59
|
+
message: 'MySql Database Port (5432)',
|
|
60
|
+
initial: 5432
|
|
49
61
|
},
|
|
50
62
|
{
|
|
51
63
|
type: 'input',
|
|
@@ -56,13 +68,13 @@ function error(message) {
|
|
|
56
68
|
{
|
|
57
69
|
type: 'input',
|
|
58
70
|
name: 'databaseUser',
|
|
59
|
-
message: 'MySql Database User (
|
|
60
|
-
initial: '
|
|
71
|
+
message: 'MySql Database User (postgres)',
|
|
72
|
+
initial: 'postgres'
|
|
61
73
|
},
|
|
62
74
|
{
|
|
63
75
|
type: 'input',
|
|
64
76
|
name: 'databasePassword',
|
|
65
|
-
message: '
|
|
77
|
+
message: 'PostgreSQL Database Password (<empty>)',
|
|
66
78
|
initial: ''
|
|
67
79
|
}
|
|
68
80
|
];
|
|
@@ -73,14 +85,15 @@ function error(message) {
|
|
|
73
85
|
process.exit(0);
|
|
74
86
|
}
|
|
75
87
|
|
|
76
|
-
let pool =
|
|
88
|
+
let pool = new Pool({
|
|
77
89
|
host: db.databaseHost,
|
|
78
90
|
port: db.databasePort,
|
|
79
91
|
user: db.databaseUser,
|
|
80
92
|
password: db.databasePassword,
|
|
81
93
|
database: db.databaseName,
|
|
82
|
-
|
|
83
|
-
|
|
94
|
+
max: 30,
|
|
95
|
+
idleTimeoutMillis: 30000,
|
|
96
|
+
connectionTimeoutMillis: 2000,
|
|
84
97
|
ssl: {
|
|
85
98
|
rejectUnauthorized: false
|
|
86
99
|
}
|
|
@@ -88,10 +101,10 @@ function error(message) {
|
|
|
88
101
|
|
|
89
102
|
// Test the secure connection
|
|
90
103
|
try {
|
|
91
|
-
await
|
|
104
|
+
await pool.query(`SELECT 1`);
|
|
92
105
|
} catch (e) {
|
|
93
|
-
if (e.message.includes('
|
|
94
|
-
pool =
|
|
106
|
+
if (e.message.includes('does not support SSL')) {
|
|
107
|
+
pool = new Pool({
|
|
95
108
|
host: db.databaseHost,
|
|
96
109
|
port: db.databasePort,
|
|
97
110
|
user: db.databaseUser,
|
|
@@ -101,22 +114,17 @@ function error(message) {
|
|
|
101
114
|
connectionLimit: 10
|
|
102
115
|
});
|
|
103
116
|
} else {
|
|
104
|
-
error(e
|
|
117
|
+
error(e);
|
|
105
118
|
process.exit(0);
|
|
106
119
|
}
|
|
107
120
|
}
|
|
108
121
|
|
|
109
|
-
//
|
|
122
|
+
// Check postgres database version
|
|
110
123
|
try {
|
|
111
|
-
const
|
|
112
|
-
|
|
113
|
-
`SELECT table_name FROM information_schema.tables WHERE table_schema = '${
|
|
114
|
-
db.databaseName || 'evershop'
|
|
115
|
-
}'`
|
|
116
|
-
);
|
|
117
|
-
if (result.length > 0) {
|
|
124
|
+
const { rows } = await execute(pool, `SHOW SERVER_VERSION;`);
|
|
125
|
+
if (rows[0].server_version < '13.0') {
|
|
118
126
|
error(
|
|
119
|
-
`
|
|
127
|
+
`Your database server version(${rows[0].server_version}) is not supported. Please upgrade to PostgreSQL version 13.0 or higher`
|
|
120
128
|
);
|
|
121
129
|
process.exit(0);
|
|
122
130
|
}
|
|
@@ -218,14 +226,75 @@ function error(message) {
|
|
|
218
226
|
messages.push(green('Setting up a database'));
|
|
219
227
|
spinner.text = messages.join('\n');
|
|
220
228
|
|
|
229
|
+
const connection = await pool.connect();
|
|
230
|
+
startTransaction(connection);
|
|
221
231
|
try {
|
|
222
|
-
await createMigrationTable(
|
|
232
|
+
await createMigrationTable(connection);
|
|
223
233
|
} catch (e) {
|
|
234
|
+
rollback(connection);
|
|
224
235
|
error(e);
|
|
225
236
|
process.exit(0);
|
|
226
237
|
}
|
|
227
238
|
|
|
228
|
-
|
|
239
|
+
const modules = [
|
|
240
|
+
{
|
|
241
|
+
name: 'auth',
|
|
242
|
+
resolve: path.resolve(__dirname, '../../src/modules/auth')
|
|
243
|
+
},
|
|
244
|
+
{
|
|
245
|
+
name: 'base',
|
|
246
|
+
resolve: path.resolve(__dirname, '../../src/modules/base')
|
|
247
|
+
},
|
|
248
|
+
{
|
|
249
|
+
name: 'catalog',
|
|
250
|
+
resolve: path.resolve(__dirname, '../../src/modules/catalog')
|
|
251
|
+
},
|
|
252
|
+
{
|
|
253
|
+
name: 'checkout',
|
|
254
|
+
resolve: path.resolve(__dirname, '../../src/modules/checkout')
|
|
255
|
+
},
|
|
256
|
+
{
|
|
257
|
+
name: 'cms',
|
|
258
|
+
resolve: path.resolve(__dirname, '../../src/modules/cms')
|
|
259
|
+
},
|
|
260
|
+
{
|
|
261
|
+
name: 'cod',
|
|
262
|
+
resolve: path.resolve(__dirname, '../../src/modules/cod')
|
|
263
|
+
},
|
|
264
|
+
{
|
|
265
|
+
name: 'customer',
|
|
266
|
+
resolve: path.resolve(__dirname, '../../src/modules/customer')
|
|
267
|
+
},
|
|
268
|
+
{
|
|
269
|
+
name: 'graphql',
|
|
270
|
+
resolve: path.resolve(__dirname, '../../src/modules/graphql')
|
|
271
|
+
},
|
|
272
|
+
{
|
|
273
|
+
name: 'paypal',
|
|
274
|
+
resolve: path.resolve(__dirname, '../../src/modules/paypal')
|
|
275
|
+
},
|
|
276
|
+
{
|
|
277
|
+
name: 'promotion',
|
|
278
|
+
resolve: path.resolve(__dirname, '../../src/modules/promotion')
|
|
279
|
+
},
|
|
280
|
+
{
|
|
281
|
+
name: 'setting',
|
|
282
|
+
resolve: path.resolve(__dirname, '../../src/modules/setting')
|
|
283
|
+
},
|
|
284
|
+
{
|
|
285
|
+
name: 'stripe',
|
|
286
|
+
resolve: path.resolve(__dirname, '../../src/modules/stripe')
|
|
287
|
+
}
|
|
288
|
+
];
|
|
289
|
+
|
|
290
|
+
try {
|
|
291
|
+
await migrate(connection, modules, adminUser);
|
|
292
|
+
commit(connection);
|
|
293
|
+
} catch (e) {
|
|
294
|
+
rollback(connection);
|
|
295
|
+
error(e);
|
|
296
|
+
process.exit(0);
|
|
297
|
+
}
|
|
229
298
|
messages.pop();
|
|
230
299
|
messages.push(green('✔ Setup database'));
|
|
231
300
|
messages.push(green('✔ Create admin user'));
|
|
@@ -247,4 +316,14 @@ function error(message) {
|
|
|
247
316
|
)
|
|
248
317
|
);
|
|
249
318
|
process.exit(0);
|
|
319
|
+
}
|
|
320
|
+
|
|
321
|
+
// eslint-disable-next-line func-names
|
|
322
|
+
(async () => {
|
|
323
|
+
try {
|
|
324
|
+
await install();
|
|
325
|
+
} catch (e) {
|
|
326
|
+
error(e);
|
|
327
|
+
process.exit(0);
|
|
328
|
+
}
|
|
250
329
|
})();
|
package/bin/install/migrate.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
const { insertOnUpdate } = require('@evershop/
|
|
1
|
+
const { insertOnUpdate } = require('@evershop/postgres-query-builder');
|
|
2
2
|
const { readdirSync, existsSync } = require('fs');
|
|
3
3
|
const path = require('path');
|
|
4
4
|
const semver = require('semver');
|
|
@@ -6,19 +6,19 @@ const bcrypt = require('bcryptjs');
|
|
|
6
6
|
|
|
7
7
|
module.exports.migrate = async function migrate(
|
|
8
8
|
connection,
|
|
9
|
-
|
|
9
|
+
modules,
|
|
10
10
|
adminUser
|
|
11
11
|
) {
|
|
12
|
-
const modules = readdirSync(path.resolve(modulePath), { withFileTypes: true })
|
|
13
|
-
|
|
14
|
-
|
|
12
|
+
// const modules = readdirSync(path.resolve(modulePath), { withFileTypes: true })
|
|
13
|
+
// .filter((dirent) => dirent.isDirectory())
|
|
14
|
+
// .map((dirent) => dirent.name);
|
|
15
15
|
|
|
16
16
|
// eslint-disable-next-line no-restricted-syntax
|
|
17
17
|
for (const module of modules) {
|
|
18
18
|
try {
|
|
19
|
-
if (existsSync(path.resolve(
|
|
19
|
+
if (existsSync(path.resolve(module.resolve, 'migration'))) {
|
|
20
20
|
const migrations = readdirSync(
|
|
21
|
-
path.resolve(
|
|
21
|
+
path.resolve(module.resolve, 'migration'),
|
|
22
22
|
{ withFileTypes: true }
|
|
23
23
|
)
|
|
24
24
|
.filter(
|
|
@@ -36,40 +36,36 @@ module.exports.migrate = async function migrate(
|
|
|
36
36
|
// eslint-disable-next-line no-await-in-loop
|
|
37
37
|
// eslint-disable-next-line global-require
|
|
38
38
|
await require(path.resolve(
|
|
39
|
-
|
|
40
|
-
module,
|
|
39
|
+
module.resolve,
|
|
41
40
|
'migration',
|
|
42
41
|
`Version-${version}.js`
|
|
43
42
|
))(connection);
|
|
44
43
|
// eslint-disable-next-line no-await-in-loop
|
|
45
|
-
await insertOnUpdate('migration')
|
|
44
|
+
await insertOnUpdate('migration', ['module'])
|
|
46
45
|
.given({
|
|
47
|
-
module,
|
|
48
|
-
version
|
|
49
|
-
status: 1
|
|
46
|
+
module: module.name,
|
|
47
|
+
version
|
|
50
48
|
})
|
|
51
49
|
.execute(connection);
|
|
52
50
|
} catch (e) {
|
|
53
|
-
console.error(e
|
|
51
|
+
console.error(e);
|
|
54
52
|
process.exit(0);
|
|
55
53
|
}
|
|
56
54
|
}
|
|
57
55
|
|
|
58
56
|
if (migrations.length === 0) {
|
|
59
|
-
await insertOnUpdate('migration')
|
|
57
|
+
await insertOnUpdate('migration', ['module'])
|
|
60
58
|
.given({
|
|
61
|
-
module,
|
|
62
|
-
version: '1.0.0'
|
|
63
|
-
status: 1
|
|
59
|
+
module: module.name,
|
|
60
|
+
version: '1.0.0'
|
|
64
61
|
})
|
|
65
62
|
.execute(connection);
|
|
66
63
|
}
|
|
67
64
|
} else {
|
|
68
|
-
await insertOnUpdate('migration')
|
|
65
|
+
await insertOnUpdate('migration', ['module'])
|
|
69
66
|
.given({
|
|
70
|
-
module,
|
|
71
|
-
version: '1.0.0'
|
|
72
|
-
status: 1
|
|
67
|
+
module: module.name,
|
|
68
|
+
version: '1.0.0'
|
|
73
69
|
})
|
|
74
70
|
.execute(connection);
|
|
75
71
|
}
|
|
@@ -79,7 +75,7 @@ module.exports.migrate = async function migrate(
|
|
|
79
75
|
}
|
|
80
76
|
|
|
81
77
|
const salt = bcrypt.genSaltSync(10);
|
|
82
|
-
await insertOnUpdate('admin_user')
|
|
78
|
+
await insertOnUpdate('admin_user', ['email'])
|
|
83
79
|
.given({
|
|
84
80
|
status: 1,
|
|
85
81
|
email: adminUser?.email || 'demo@demo.com',
|
|
@@ -1,7 +1,17 @@
|
|
|
1
1
|
const path = require('path');
|
|
2
2
|
const semver = require('semver');
|
|
3
|
-
const {
|
|
4
|
-
const {
|
|
3
|
+
const { red } = require('kleur');
|
|
4
|
+
const {
|
|
5
|
+
insertOnUpdate,
|
|
6
|
+
select,
|
|
7
|
+
startTransaction,
|
|
8
|
+
commit,
|
|
9
|
+
rollback
|
|
10
|
+
} = require('@evershop/postgres-query-builder');
|
|
11
|
+
const {
|
|
12
|
+
pool,
|
|
13
|
+
getConnection
|
|
14
|
+
} = require('@evershop/evershop/src/lib/postgres/connection');
|
|
5
15
|
const { existsSync, readdirSync } = require('fs');
|
|
6
16
|
|
|
7
17
|
async function getCurrentInstalledVersion(module) {
|
|
@@ -37,21 +47,32 @@ module.exports.migrate = async function migrate(module) {
|
|
|
37
47
|
if (semver.lte(version, currentInstalledVersion)) {
|
|
38
48
|
continue;
|
|
39
49
|
}
|
|
50
|
+
const connection = await getConnection();
|
|
51
|
+
await startTransaction(connection);
|
|
40
52
|
// eslint-disable-next-line no-await-in-loop
|
|
41
53
|
// eslint-disable-next-line global-require
|
|
42
54
|
/** We expect the migration script to provide a function as a default export */
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
55
|
+
try {
|
|
56
|
+
await require(path.resolve(
|
|
57
|
+
module.path,
|
|
58
|
+
'migration',
|
|
59
|
+
`Version-${version}.js`
|
|
60
|
+
))(connection);
|
|
61
|
+
// eslint-disable-next-line no-await-in-loop
|
|
62
|
+
await insertOnUpdate('migration', ['module'])
|
|
63
|
+
.given({
|
|
64
|
+
module: module.name,
|
|
65
|
+
version
|
|
66
|
+
})
|
|
67
|
+
.execute(connection, false);
|
|
68
|
+
await commit(connection);
|
|
69
|
+
} catch (e) {
|
|
70
|
+
await rollback(connection);
|
|
71
|
+
console.log(
|
|
72
|
+
red(`Migration failed for ${module.name}, version ${version}\n`),
|
|
73
|
+
e
|
|
74
|
+
);
|
|
75
|
+
process.exit(0);
|
|
76
|
+
}
|
|
56
77
|
}
|
|
57
78
|
};
|
package/bin/lib/buildEntry.js
CHANGED
|
@@ -65,7 +65,9 @@ module.exports.buildEntry = async function buildEntry(
|
|
|
65
65
|
import React from 'react';
|
|
66
66
|
import ReactDOM from 'react-dom';
|
|
67
67
|
import Area from '@evershop/evershop/src/components/common/Area';
|
|
68
|
-
import Hydrate from '@evershop/evershop/src/components/common/react/client
|
|
68
|
+
import Hydrate from '@evershop/evershop/src/components/common/react/client/${
|
|
69
|
+
route.isAdmin ? 'HydrateAdmin' : 'HydrateFrontStore'
|
|
70
|
+
}';
|
|
69
71
|
`;
|
|
70
72
|
contentClient += '\r\n';
|
|
71
73
|
contentClient += `Area.defaultProps.components = ${inspect(areas, {
|
|
@@ -82,7 +84,7 @@ module.exports.buildEntry = async function buildEntry(
|
|
|
82
84
|
await mkdir(path.resolve(subPath, 'client'), { recursive: true });
|
|
83
85
|
}
|
|
84
86
|
await writeFile(
|
|
85
|
-
path.resolve(subPath, 'client', 'entry.
|
|
87
|
+
path.resolve(subPath, 'client', 'entry.jsx'),
|
|
86
88
|
contentClient
|
|
87
89
|
);
|
|
88
90
|
|
|
@@ -106,7 +108,7 @@ module.exports.buildEntry = async function buildEntry(
|
|
|
106
108
|
await mkdir(path.resolve(subPath, 'server'), { recursive: true });
|
|
107
109
|
}
|
|
108
110
|
await writeFile(
|
|
109
|
-
path.resolve(subPath, 'server', 'entry.
|
|
111
|
+
path.resolve(subPath, 'server', 'entry.jsx'),
|
|
110
112
|
contentServer
|
|
111
113
|
);
|
|
112
114
|
await writeFile(
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@evershop/evershop",
|
|
3
|
-
"version": "1.0.0-rc.
|
|
3
|
+
"version": "1.0.0-rc.3",
|
|
4
4
|
"description": "The React Ecommerce platform. Built with React and MySQL. Open-source and free. Fast and customizable.",
|
|
5
5
|
"files": [
|
|
6
6
|
"bin",
|
|
@@ -38,7 +38,7 @@
|
|
|
38
38
|
"@babel/preset-react": "^7.16.0",
|
|
39
39
|
"@ckeditor/ckeditor5-build-classic": "^36.0.1",
|
|
40
40
|
"@ckeditor/ckeditor5-react": "^5.1.0",
|
|
41
|
-
"@evershop/
|
|
41
|
+
"@evershop/postgres-query-builder": "^1.0.2",
|
|
42
42
|
"@graphql-tools/load-files": "^6.6.1",
|
|
43
43
|
"@graphql-tools/merge": "^8.3.5",
|
|
44
44
|
"@graphql-tools/schema": "^9.0.3",
|
|
@@ -83,9 +83,9 @@
|
|
|
83
83
|
"luxon": "^2.0.2",
|
|
84
84
|
"mini-css-extract-plugin": "^2.6.1",
|
|
85
85
|
"multer": "^1.4.2",
|
|
86
|
-
"mysql2": "^3.1.2",
|
|
87
86
|
"npm": "^8.18.0",
|
|
88
87
|
"ora": "^5.4.1",
|
|
88
|
+
"pg": "^8.10.0",
|
|
89
89
|
"postcss": "^8.4.18",
|
|
90
90
|
"promise.allsettled": "^1.0.4",
|
|
91
91
|
"prop-types": "^15.8.1",
|
|
@@ -0,0 +1,173 @@
|
|
|
1
|
+
import { Card } from '@components/admin/cms/Card';
|
|
2
|
+
import Spinner from '@components/common/Spinner';
|
|
3
|
+
import Button from '@components/common/form/Button';
|
|
4
|
+
import PropTypes from 'prop-types';
|
|
5
|
+
import React from 'react';
|
|
6
|
+
import { toast } from 'react-toastify';
|
|
7
|
+
import { useQuery } from 'urql';
|
|
8
|
+
import CheckIcon from '@heroicons/react/outline/CheckIcon';
|
|
9
|
+
|
|
10
|
+
const SearchQuery = `
|
|
11
|
+
query Query ($query: String) {
|
|
12
|
+
products: searchProducts(query: $query) {
|
|
13
|
+
items {
|
|
14
|
+
productId
|
|
15
|
+
uuid
|
|
16
|
+
sku
|
|
17
|
+
categories {
|
|
18
|
+
categoryId
|
|
19
|
+
}
|
|
20
|
+
name
|
|
21
|
+
price {
|
|
22
|
+
regular {
|
|
23
|
+
text
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
image {
|
|
27
|
+
url: thumb
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
total
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
`;
|
|
34
|
+
|
|
35
|
+
function AddProducts({ addProductApi, categoryId, closeModal }) {
|
|
36
|
+
const [inputValue, setInputValue] = React.useState('');
|
|
37
|
+
const [addedProducts, setAddedProducts] = React.useState([]);
|
|
38
|
+
|
|
39
|
+
const [result, reexecuteQuery] = useQuery({
|
|
40
|
+
query: SearchQuery,
|
|
41
|
+
variables: { query: inputValue },
|
|
42
|
+
pause: true
|
|
43
|
+
});
|
|
44
|
+
|
|
45
|
+
const addProduct = async (productId) => {
|
|
46
|
+
const response = await fetch(addProductApi, {
|
|
47
|
+
method: 'POST',
|
|
48
|
+
headers: {
|
|
49
|
+
'Content-Type': 'application/json'
|
|
50
|
+
},
|
|
51
|
+
body: JSON.stringify({
|
|
52
|
+
product_id: productId
|
|
53
|
+
}),
|
|
54
|
+
credentials: 'include'
|
|
55
|
+
});
|
|
56
|
+
const data = await response.json();
|
|
57
|
+
if (!data.success) {
|
|
58
|
+
toast.error(data.message);
|
|
59
|
+
} else {
|
|
60
|
+
setAddedProducts([...addedProducts, productId]);
|
|
61
|
+
}
|
|
62
|
+
};
|
|
63
|
+
|
|
64
|
+
React.useEffect(() => {
|
|
65
|
+
const timer = setTimeout(() => {
|
|
66
|
+
reexecuteQuery({ requestPolicy: 'network-only' });
|
|
67
|
+
}, 1500);
|
|
68
|
+
|
|
69
|
+
return () => clearTimeout(timer);
|
|
70
|
+
}, [inputValue]);
|
|
71
|
+
|
|
72
|
+
const { data, fetching, error } = result;
|
|
73
|
+
if (error) {
|
|
74
|
+
return (
|
|
75
|
+
<p>
|
|
76
|
+
Oh no...
|
|
77
|
+
{error.message}
|
|
78
|
+
</p>
|
|
79
|
+
);
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
return (
|
|
83
|
+
<Card title="Add Products">
|
|
84
|
+
<div className="modal-content">
|
|
85
|
+
<Card.Session>
|
|
86
|
+
<div>
|
|
87
|
+
<div className="border rounded border-divider mb-2">
|
|
88
|
+
<input
|
|
89
|
+
type="text"
|
|
90
|
+
value={inputValue}
|
|
91
|
+
placeholder="Search products"
|
|
92
|
+
onChange={(e) => setInputValue(e.target.value)}
|
|
93
|
+
/>
|
|
94
|
+
</div>
|
|
95
|
+
{!data && (
|
|
96
|
+
<div className="p-3 border border-divider rounded flex justify-center items-center">
|
|
97
|
+
<Spinner width={25} height={25} />
|
|
98
|
+
</div>
|
|
99
|
+
)}
|
|
100
|
+
{!fetching && data && (
|
|
101
|
+
<>
|
|
102
|
+
<div className="divide-y">
|
|
103
|
+
{data.products.items.length === 0 && (
|
|
104
|
+
<div className="p-3 border border-divider rounded flex justify-center items-center">
|
|
105
|
+
{inputValue ? (
|
|
106
|
+
<p>No products found for query "{inputValue}"</p>
|
|
107
|
+
) : (
|
|
108
|
+
<p>You have no products to display</p>
|
|
109
|
+
)}
|
|
110
|
+
</div>
|
|
111
|
+
)}
|
|
112
|
+
{data.products.items.map((product) => (
|
|
113
|
+
<div
|
|
114
|
+
key={product.uuid}
|
|
115
|
+
className="grid grid-cols-8 gap-2 py-1 border-divider items-center"
|
|
116
|
+
>
|
|
117
|
+
<div className="col-span-1">
|
|
118
|
+
<img src={product.image?.url} alt={product.name} />
|
|
119
|
+
</div>
|
|
120
|
+
<div className="col-span-5">
|
|
121
|
+
<h3>{product.name}</h3>
|
|
122
|
+
<p>{product.sku}</p>
|
|
123
|
+
</div>
|
|
124
|
+
<div className="col-span-2 text-right">
|
|
125
|
+
{!(
|
|
126
|
+
addedProducts.includes(product.uuid) ||
|
|
127
|
+
product.categories.find(
|
|
128
|
+
(c) => c.categoryId === categoryId
|
|
129
|
+
)
|
|
130
|
+
) && (
|
|
131
|
+
<button
|
|
132
|
+
className="button secondary"
|
|
133
|
+
onClick={async (e) => {
|
|
134
|
+
e.preventDefault();
|
|
135
|
+
await addProduct(product.uuid);
|
|
136
|
+
}}
|
|
137
|
+
>
|
|
138
|
+
Add
|
|
139
|
+
</button>
|
|
140
|
+
)}
|
|
141
|
+
{(addedProducts.includes(product.uuid) ||
|
|
142
|
+
product.categories.find(
|
|
143
|
+
(c) => c.categoryId === categoryId
|
|
144
|
+
)) && (
|
|
145
|
+
<span className="button primary">
|
|
146
|
+
<CheckIcon width={20} height={20} />
|
|
147
|
+
</span>
|
|
148
|
+
)}
|
|
149
|
+
</div>
|
|
150
|
+
</div>
|
|
151
|
+
))}
|
|
152
|
+
</div>
|
|
153
|
+
</>
|
|
154
|
+
)}
|
|
155
|
+
</div>
|
|
156
|
+
</Card.Session>
|
|
157
|
+
</div>
|
|
158
|
+
<Card.Session>
|
|
159
|
+
<div className="flex justify-end">
|
|
160
|
+
<Button title="Close" variant="secondary" onAction={closeModal} />
|
|
161
|
+
</div>
|
|
162
|
+
</Card.Session>
|
|
163
|
+
</Card>
|
|
164
|
+
);
|
|
165
|
+
}
|
|
166
|
+
|
|
167
|
+
AddProducts.propTypes = {
|
|
168
|
+
addProductApi: PropTypes.string.isRequired,
|
|
169
|
+
categoryId: PropTypes.number.isRequired,
|
|
170
|
+
closeModal: PropTypes.func.isRequired
|
|
171
|
+
};
|
|
172
|
+
|
|
173
|
+
export default AddProducts;
|