diff --git a/Includes/Modules.php b/Includes/Modules.php index 2c95e293..2dc0d454 100644 --- a/Includes/Modules.php +++ b/Includes/Modules.php @@ -80,6 +80,7 @@ public function list_all_modules() { $all_modules[] = array( 'id' => $module_id, 'name' => $module->get_name(), + 'dir' =>$module->get_dir(), 'icon' => $module->get_icon(), 'banner' => $module->get_banner(), 'description' => $module->get_description(), diff --git a/Includes/Modules/BoGo/BoGoModule.php b/Includes/Modules/BoGo/BoGoModule.php index 4f8d3e89..c3f5d303 100644 --- a/Includes/Modules/BoGo/BoGoModule.php +++ b/Includes/Modules/BoGo/BoGoModule.php @@ -32,6 +32,15 @@ public function get_id() { return 'bogo'; } + /** + * directory Name for a module. + * + * @return string + */ + public function get_dir() { + return 'BoGo'; + } + /** * Icon for a module. * diff --git a/Includes/Modules/CountdownTimer/CountdownTimerModule.php b/Includes/Modules/CountdownTimer/CountdownTimerModule.php index 087d7250..211ce831 100644 --- a/Includes/Modules/CountdownTimer/CountdownTimerModule.php +++ b/Includes/Modules/CountdownTimer/CountdownTimerModule.php @@ -31,6 +31,15 @@ public function get_id() { return 'countdown-timer'; } + /** + * directory Name for a module. + * + * @return string + */ + public function get_dir() { + return 'SalesCountdown'; + } + /** * Icon for a module. * diff --git a/Includes/Modules/DirectCheckout/DirectCheckoutModule.php b/Includes/Modules/DirectCheckout/DirectCheckoutModule.php index 9d39fe2f..06b4149b 100644 --- a/Includes/Modules/DirectCheckout/DirectCheckoutModule.php +++ b/Includes/Modules/DirectCheckout/DirectCheckoutModule.php @@ -31,6 +31,15 @@ public function get_id() { return 'direct-checkout'; } + /** + * directory Name for a module. + * + * @return string + */ + public function get_dir() { + return 'DirectCheckout'; + } + /** * Icon for a module. * diff --git a/Includes/Modules/FloatingNotificationBar/FloatingNotificationBarModule.php b/Includes/Modules/FloatingNotificationBar/FloatingNotificationBarModule.php index 2d7d09ef..cd8101a4 100644 --- a/Includes/Modules/FloatingNotificationBar/FloatingNotificationBarModule.php +++ b/Includes/Modules/FloatingNotificationBar/FloatingNotificationBarModule.php @@ -31,6 +31,16 @@ public function get_id() { return 'floating-notification-bar'; } + /** + * directory Name for a module. + * + * @return string + */ + public function get_dir() { + return 'FloatingNotificationBar'; + } + + /** * Icon for a module. * diff --git a/Includes/Modules/FlyCart/FlyCartModule.php b/Includes/Modules/FlyCart/FlyCartModule.php index f32039f6..26bad2b8 100644 --- a/Includes/Modules/FlyCart/FlyCartModule.php +++ b/Includes/Modules/FlyCart/FlyCartModule.php @@ -31,6 +31,15 @@ public function get_id() { return 'fly-cart'; } + /** + * directory Name for a module. + * + * @return string + */ + public function get_dir() { + return 'QuickCart'; + } + /** * Icon for a module. * diff --git a/Includes/Modules/FrequentlyBought/FrequentlyBoughtModule.php b/Includes/Modules/FrequentlyBought/FrequentlyBoughtModule.php new file mode 100644 index 00000000..1036a093 --- /dev/null +++ b/Includes/Modules/FrequentlyBought/FrequentlyBoughtModule.php @@ -0,0 +1,125 @@ + admin_url( 'admin-ajax.php' ), + 'ajd_nonce' => $ajd_nonce, + 'image_folder' => sgsb_modules_url( 'FrequentlyBought/assets/images' ), + ) + ); + } + } + + /** + * Add CSS scripts to admin. + */ + public function admin_enqueue_styles() { + $ftime = filemtime( sgsb_modules_path( 'FrequentlyBought/assets/css/frequently-bought-custom-admin.css' ) ); + $ftime_template = filemtime( sgsb_modules_path( 'FrequentlyBought/assets/css/frequently-bought-template.css' ) ); + + wp_enqueue_style( + 'sgsb-frequently-bought-custom-admin-css', + sgsb_modules_url( 'FrequentlyBought/assets/css/frequently-bought-custom-admin.css' ), + null, + $ftime + ); + + wp_enqueue_style( + 'sgsb-frequently-bought-template-css', + sgsb_modules_url( 'FrequentlyBought/assets/css/frequently-bought-template.css' ), + null, + $ftime_template + ); + } +} diff --git a/Includes/Modules/FrequentlyBought/assets/css/frequently-bought-custom-admin.css b/Includes/Modules/FrequentlyBought/assets/css/frequently-bought-custom-admin.css new file mode 100644 index 00000000..4201ac47 --- /dev/null +++ b/Includes/Modules/FrequentlyBought/assets/css/frequently-bought-custom-admin.css @@ -0,0 +1,147 @@ + +.tab-pan-wrapper .ant-tabs-nav{ + background: #d9ede1; + padding: 0 15px; + color: black; +} + + +.order-bump-offer{ + font-size: 16px; + background: #7979F5; + height: 50px; + font-size: 20px; +} + +.order-bump-appearance{ + font-size: 16px; + background: #7979F5; + height: 50px; + font-size: 20px; + margin-bottom: 10px; +} + +.order-bump-offer-text, .order-bump-appearance-text{ + font-size: 27px; +} + +.order-bump-offer-section{ + background: #EEEEEE; + height: 35px; + margin-top: 10px; + margin-bottom: 10px; + padding-left: 5px; + padding-top: 5px; +} + +.order-bump-offer-section-text{ + font-size: 16px; + color: #9b9bf5; +} +.order-bump-save-change-button{ + background: #7979F5; + border: 1px solid #7979F5; + margin-top: 20px; +} + + +/* Start Order Bump List Table Styles. */ +.create-upsell-order-bump-button { + border: 0; + width: 126px; + height: auto; + font-size: 15px; + font-weight: 500; + padding: 8px 24px; + line-height: 20px; + background-color: #CCE3FF; + border-radius: 5px !important; +} + +.create-upsell-order-bump-button, +.create-upsell-order-bump-button:hover { + color: #073B4C !important; +} + +.upsell-order-list-table .ant-table-container, +.upsell-order-list-table .ant-table-placeholder .ant-table-cell { + /*border-radius: 5px;*/ + border: 0 !important; +} + +.upsell-order-list-table .ant-table.ant-table-bordered { + overflow: hidden; + border-radius: 10px; + border: 1px solid #DDE5F9; +} + +.upsell-order-list-table .ant-table .ant-table-thead .ant-table-cell:last-child { + border-inline-end: 0 !important; +} + +/*.upsell-order-list-table .ant-table .ant-table-body .ant-table-cell {*/ +/* border: 0;*/ +/*}*/ + +.upsell-order-list-table .ant-table-thead .ant-table-cell { + color: #073B4C; + font-size: 16px; + background: #FFF; + font-weight: 500; + padding: 13px 20px; +} + +.upsell-order-list-table .ant-table-tbody .ant-table-row, +.upsell-order-list-table .ant-table-tbody .ant-table-placeholder { + background: #f7f9ff !important; +} + +.upsell-order-list-table .ant-table-tbody .ant-table-row .ant-table-cell { + color: #073B4C; + font-size: 14px; + font-weight: 500; + padding: 18px 16px; + vertical-align: top; +} + +.upsell-order-list-table .ant-table-tbody .ant-table-row .ant-table-cell .table-products, +.upsell-order-list-table .ant-table-tbody .ant-table-row .ant-table-cell .table-categories { + gap: 8px; + display: flex; + flex-wrap: wrap; + margin-top: 8px; +} + +.upsell-order-list-table .ant-table-tbody .ant-table-row .ant-table-cell .category-pills, +.upsell-order-list-table .ant-table-tbody .ant-table-row .ant-table-cell .product-pills { + border-radius: 4px; + padding: 2px 12px; + font-weight: 400; +} + +.upsell-order-list-table .ant-table-tbody .ant-table-row .ant-table-cell .product-pills { + color: #008DFF; + background: #EBF6FF; +} + +.upsell-order-list-table .ant-table-tbody .ant-table-row .ant-table-cell .category-pills { + color: #32DBBE; + background: #EEFCF9; +} + +.upsell-order-list-table .ant-table-tbody .ant-table-row .ant-table-cell:last-child { + border-right: 0 !important; +} + +.upsell-order-list-table .ant-table-tbody .ant-table-row:last-child td.ant-table-cell { + border: 0; +} + +.upsell-order-list-table .ant-table-container, +.upsell-order-list-table .ant-table-content .ant-table-cell { + border-color: #DDE6F9 !important; +} + +/* End Order Bump List Table Styles. */ + + diff --git a/Includes/Modules/FrequentlyBought/assets/css/frequently-bought-template.css b/Includes/Modules/FrequentlyBought/assets/css/frequently-bought-template.css new file mode 100644 index 00000000..6893b16b --- /dev/null +++ b/Includes/Modules/FrequentlyBought/assets/css/frequently-bought-template.css @@ -0,0 +1,157 @@ +.bump-template-main-wrapper{ + width: 100%; + /* height: 900px; */ + /* background: rgb(185, 179, 190); */ + margin-bottom: 30px; + /* padding: 0 20px ; */ +} + +.bump-template-main-wrapper .demo-template-design-change-area{ + width: 55%; + float: left; +} + +.bump-template-main-wrapper .template-overview-area{ + width: 45%; + min-height: 800px; + float: left; + padding: 10 20px ; +} + +.offer-overview-top-text{ + width: 100%; + height: 45px; + background: rgb(146, 218, 146); + padding: 10px; + font-size: 16px; + font-weight: bold; + margin-bottom: 20px; +} + +.offer-main-wrap{ + width: 100%; + height: 600px; + padding: 10px; +} + +.offer-main-wrap .dynamic-offer-text{ + gap: 4px; + width: 100%; + display: flex; + min-height: 30px; + font-weight: bold; + align-items: center; + margin-bottom: 15px; + justify-content: center; +} + +.offer-main-wrap .product-image-and-title{ + width: 100%; + min-height: 160px; + margin-bottom: 20px; + padding: 5px; +} + +.offer-main-wrap .product-image-and-title .offer-product-image{ + background: rgb(247, 242, 242); + min-height: 120px; + width: 30%; + padding: 5px; + float: left; + +} + +.offer-main-wrap .product-image-and-title .offer-product-title{ + min-height: 150px; + width: 70%; + padding: 5px; + margin-bottom: 10px; + float: left; +} + +.offer-main-wrap .product-checkbox-and-excitement-message{ + width: 100%; + min-height: 35px; + margin-bottom: 20px; + padding: 5px; + font-size: 15px; + margin-top: 20px; + clear: both; + display: flex; + align-items: center; + gap: 5px; +} + +.offer-main-wrap .product-checkbox-and-excitement-message .custom-checkbox{ + height: 25px; + width: 25px; +} + +.offer-main-wrap .product-description{ + width: 100%; + height: 200px; + background: rgba(48, 33, 182, 0.678); + margin-bottom: 20px; + padding: 5px; +} + +/* Teamplate design change area */ +.demo-template-design-change-area .offer-offer-box-text{ + width: 98%; + height: 25px; + background: rgb(236, 233, 233); + padding-left: 5px; + font-size: 15px; + font-weight: bold; + margin-bottom: 10px; + border-radius: 5px; +} + +.form-input-distance{ + margin-top: -20px; +} + +.offer-discount-title::before{ + content: 'For Discount %dfgdfgdfg'; +} + +.App { + font-family: sans-serif; + padding: 20px; + } + + h2 { + margin-top: 40px; + } + + .rc-color-picker-panel { + border: 1px solid #ccc; + } + .rc-color-picker-panel-inner { + border: none; + box-shadow: none; + } + .rc-color-picker-panel-board-hsv { + border-radius: 12px; + outline: none; + } + .rc-color-picker-panel-board-value { + border: none; + border-radius: 12px; + } + .rc-color-picker-panel-board-saturation { + border: none; + border-radius: 12px; + } + .rc-color-picker-panel-ribbon { + border-radius: 12px; + } + .rc-color-picker-panel-wrap-preview { + border-radius: 12px; + } + .rc-color-picker-panel-preview span { + border-radius: 12px; + } + .rc-color-picker-panel-preview input { + border-radius: 12px; + } diff --git a/Includes/Modules/FrequentlyBought/assets/images/bump-preview.svg b/Includes/Modules/FrequentlyBought/assets/images/bump-preview.svg new file mode 100644 index 00000000..7d65a651 --- /dev/null +++ b/Includes/Modules/FrequentlyBought/assets/images/bump-preview.svg @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/Includes/Modules/FrequentlyBought/assets/images/upsell-order-bump-module-img.webp b/Includes/Modules/FrequentlyBought/assets/images/upsell-order-bump-module-img.webp new file mode 100644 index 00000000..e9704306 Binary files /dev/null and b/Includes/Modules/FrequentlyBought/assets/images/upsell-order-bump-module-img.webp differ diff --git a/Includes/Modules/FrequentlyBought/assets/images/upsell-order-bump.svg b/Includes/Modules/FrequentlyBought/assets/images/upsell-order-bump.svg new file mode 100644 index 00000000..abb27fdf --- /dev/null +++ b/Includes/Modules/FrequentlyBought/assets/images/upsell-order-bump.svg @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/Includes/Modules/FrequentlyBought/assets/js/frequently-bought-admin-custom.js b/Includes/Modules/FrequentlyBought/assets/js/frequently-bought-admin-custom.js new file mode 100644 index 00000000..9bb15ac1 --- /dev/null +++ b/Includes/Modules/FrequentlyBought/assets/js/frequently-bought-admin-custom.js @@ -0,0 +1,4 @@ +;(function($){ + $('#_custom_product_text_field').select2(); + $('#_discount_rate_for_bump_product').select2(); +})(jQuery); diff --git a/Includes/Modules/FrequentlyBought/assets/package.json b/Includes/Modules/FrequentlyBought/assets/package.json new file mode 100644 index 00000000..ca0ce02c --- /dev/null +++ b/Includes/Modules/FrequentlyBought/assets/package.json @@ -0,0 +1,21 @@ +{ + "name": "sales-booster-frequently-bought", + "version": "1.0.0", + "description": "", + "main": "index.js", + "scripts": { + "start": "wp-scripts start src/settings.js", + "build": "wp-scripts build src/settings.js" + }, + "author": "", + "license": "ISC", + "devDependencies": { + "@wordpress/scripts": "^23.0.0" + }, + "dependencies": { + "antd": "^5.5.0", + "nanoid": "^3.3.4", + "@wordpress/i18n": "^4.24.0", + "react-input-color": "^4.0.0" + } +} diff --git a/Includes/Modules/FrequentlyBought/assets/src/settings.js b/Includes/Modules/FrequentlyBought/assets/src/settings.js new file mode 100644 index 00000000..47918efc --- /dev/null +++ b/Includes/Modules/FrequentlyBought/assets/src/settings.js @@ -0,0 +1,32 @@ +import { addFilter,applyFilters } from "@wordpress/hooks"; +import { __ } from "@wordpress/i18n"; +import PlanUpgradeModal from "sales-booster/src/components/pro-previews/PromptNotice/PlanUpgradeModal"; + +/** + * Add routes to sidebar. + */ + +const componentObject = { + element: , // Assuming PlanUpgradeModal is a valid component +}; + +addFilter( + "sgsb_routes", + "sgsb", + (routes, outlet, navigate, useParams, useSearchParams) => { + const moduleName = "frequently-bought"; + let routesData = applyFilters("sgsb_fbt_settings_enable", componentObject,outlet, navigate, useParams, useSearchParams,moduleName); + + routes.push({ + name: moduleName, + label: "FBT", + path: "/frequently-bought", + exact: true, + ...routesData, + }); + + return routes; + } +); + + diff --git a/Includes/Modules/ProgressiveDiscountBanner/ProgressiveDiscountBannerModule.php b/Includes/Modules/ProgressiveDiscountBanner/ProgressiveDiscountBannerModule.php index 01e8a6b7..590238ac 100644 --- a/Includes/Modules/ProgressiveDiscountBanner/ProgressiveDiscountBannerModule.php +++ b/Includes/Modules/ProgressiveDiscountBanner/ProgressiveDiscountBannerModule.php @@ -31,6 +31,14 @@ public function get_id() { return 'progressive-discount-banner'; } + /** + * directory Name for a module. + * + * @return string + */ + public function get_dir() { + return 'FreeShippingBar'; + } /** * Icon for a module. * diff --git a/Includes/Modules/QuickView/QuickViewModule.php b/Includes/Modules/QuickView/QuickViewModule.php index 831c3c1d..886f4bd2 100644 --- a/Includes/Modules/QuickView/QuickViewModule.php +++ b/Includes/Modules/QuickView/QuickViewModule.php @@ -31,6 +31,15 @@ public function get_id() { return 'quick-view'; } + /** + * directory Name for a module. + * + * @return string + */ + public function get_dir() { + return 'QuickView'; + } + /** * Icon for a module. * diff --git a/Includes/Modules/SalesPop/SalesPopModule.php b/Includes/Modules/SalesPop/SalesPopModule.php index 556f1d95..03afd580 100644 --- a/Includes/Modules/SalesPop/SalesPopModule.php +++ b/Includes/Modules/SalesPop/SalesPopModule.php @@ -31,6 +31,15 @@ public function get_id() { return 'sales-pop'; } + /** + * directory Name for a module. + * + * @return string + */ + public function get_dir() { + return 'SalesPop'; + } + /** * Icon for a module. * diff --git a/Includes/Modules/StockBar/StockBarModule.php b/Includes/Modules/StockBar/StockBarModule.php index 36c851c6..3e89d5d9 100644 --- a/Includes/Modules/StockBar/StockBarModule.php +++ b/Includes/Modules/StockBar/StockBarModule.php @@ -31,6 +31,15 @@ public function get_id() { return 'stock-bar'; } + /** + * directory Name for a module. + * + * @return string + */ + public function get_dir() { + return 'StockBar'; + } + /** * Icon for a module. * diff --git a/Includes/Modules/UpsellOrderBump/UpsellOrderBumpModule.php b/Includes/Modules/UpsellOrderBump/UpsellOrderBumpModule.php index 08b516b3..3c13fa59 100644 --- a/Includes/Modules/UpsellOrderBump/UpsellOrderBumpModule.php +++ b/Includes/Modules/UpsellOrderBump/UpsellOrderBumpModule.php @@ -32,6 +32,15 @@ public function get_id() { return 'upsell-order-bump'; } + /** + * directory Name for a module. + * + * @return string + */ + public function get_dir() { + return 'UpsellOrderBump'; + } + /** * Icon for a module. * diff --git a/assets/src/admin.scss b/assets/src/admin.scss index c4ebab6b..c54aeef9 100644 --- a/assets/src/admin.scss +++ b/assets/src/admin.scss @@ -545,7 +545,7 @@ main.ant-layout-content.sgsb-module-setting-layout { .widgets-menu { padding: 0 20px 0 0; - max-height: 0; + // max-height: 0; overflow: hidden; transition: max-height 0.5s ease-in-out; @@ -554,13 +554,13 @@ main.ant-layout-content.sgsb-module-setting-layout { padding: 0 42px 0 0; } - &.ant-menu-hidden { - max-height: 0; // Hide immediately when hidden class is applied - } + // &.ant-menu-hidden { + // max-height: 0; // Hide immediately when hidden class is applied + // } - &:not(.ant-menu-hidden) { - max-height: 500px; // Show immediately when hidden class is removed - } + // &:not(.ant-menu-hidden) { + // max-height: 500px; // Show immediately when hidden class is removed + // } .sgsb-selected-module { background: #0875ff; @@ -1082,22 +1082,20 @@ End Settings Sidebar .widgets-menu { padding: 0 20px 0 0; - max-height: 0; overflow: hidden; transition: max-height 0.5s ease-in-out; @media (min-width: 1800px) { - // padding: 0 22px; padding: 0 42px 0 0; } - &.ant-menu-hidden { - max-height: 0; // Hide immediately when hidden class is applied - } + // &.ant-menu-hidden { + // max-height: 0; // Hide immediately when hidden class is applied + // } - &:not(.ant-menu-hidden) { - max-height: 500px; // Show immediately when hidden class is removed - } + // &:not(.ant-menu-hidden) { + // max-height: 500px; // Show immediately when hidden class is removed + // } .sgsb-selected-module { background: #0875ff; diff --git a/assets/src/components/pro-previews/Modules/FrequentlyBought/index.js b/assets/src/components/pro-previews/Modules/FrequentlyBought/index.js new file mode 100644 index 00000000..7544068a --- /dev/null +++ b/assets/src/components/pro-previews/Modules/FrequentlyBought/index.js @@ -0,0 +1,12 @@ +import { __ } from "@wordpress/i18n"; +import { addFilter } from "@wordpress/hooks"; +import PromptNotice from "../../PromptNotice/PlanUpgradeModal"; + +// Handle stock bar modules pro settings prompts. +addFilter( + "sgsb_frequently_bought_together_enable_settings", + "sgsb_frequently_bought_together_enable_settings_callback", + (component, routeData) => { + return routeData; + } +); diff --git a/assets/src/components/pro-previews/PromptNotice/PlanUpgradeModal.jsx b/assets/src/components/pro-previews/PromptNotice/PlanUpgradeModal.jsx new file mode 100644 index 00000000..26888ebf --- /dev/null +++ b/assets/src/components/pro-previews/PromptNotice/PlanUpgradeModal.jsx @@ -0,0 +1,243 @@ +import * as React from "react"; + +const CheckmarkItem = ({ children }) => ( +
+ Checkmark +
{children}
+
+); + +const MoneyBackGuarantee = () => ( +
+ Money Back Guarantee +
100% Money Back Guarantee
+
+); + +const PlanUpgradeModal = () => { + return ( + <> +
+
+
+
+ Storegrowth Logo +

Unlock the power of Storegrowth.

+

+ Elevate your WooCommerce store with our sales booster plugin. Drive increased sales and enhance the shopping experience for your customers. +

+
+ + +
+
+
+
+
+

Include with the pro plan

+ Unlimited support + Access to premium templates + Full access + Multi site activation +
+ +
+
+
+ + + + ); +}; + +export default PlanUpgradeModal; diff --git a/assets/src/components/pro-previews/index.js b/assets/src/components/pro-previews/index.js index 021d9137..c6187408 100644 --- a/assets/src/components/pro-previews/index.js +++ b/assets/src/components/pro-previews/index.js @@ -1,9 +1,10 @@ -import './Modules/BoGo/index.js'; -import './Modules/QuickCart/index.js'; -import './Modules/QuickView/index.js'; -import './Modules/SalesPop/index.js'; -import './Modules/SalesCountdown/index.js'; -import './Modules/StockBar/index.js'; -import './Modules/DirectCheckout/index.js'; -import './Modules/FreeShippingBar/index.js'; -import './Modules/FloatingNotificationBar/index.js'; +import "./Modules/BoGo/index.js"; +import "./Modules/QuickCart/index.js"; +import "./Modules/QuickView/index.js"; +import "./Modules/SalesPop/index.js"; +import "./Modules/SalesCountdown/index.js"; +import "./Modules/StockBar/index.js"; +import "./Modules/DirectCheckout/index.js"; +import "./Modules/FreeShippingBar/index.js"; +import "./Modules/FloatingNotificationBar/index.js"; +import "./Modules/FrequentlyBought/index.js"; diff --git a/assets/src/components/settings/Layout.js b/assets/src/components/settings/Layout.js index 8ab67795..8be150cf 100644 --- a/assets/src/components/settings/Layout.js +++ b/assets/src/components/settings/Layout.js @@ -7,7 +7,6 @@ import { useRoutes, useSearchParams, } from "react-router-dom"; - import React from "react"; import HeadBar from "./HeadBar"; import Sidebar from "./Sidebar"; @@ -19,12 +18,9 @@ function ModuleSettings({ routes }) { return ( - - + {element} @@ -33,11 +29,11 @@ function ModuleSettings({ routes }) { ); } -// If not module is active. +// If no module is active. function NoModuleActive() { return ( ); @@ -47,14 +43,18 @@ function AppLayout() { let navigate = useNavigate(); let routes = applyFilters( - 'sgsb_routes', - [ ...dashboardRoutes ], + "sgsb_routes", + [...dashboardRoutes], Outlet, navigate, useParams, useSearchParams ); + // routes = !sgsbAdmin.isPro + // ? routes + // : routes.filter((route) => route.promptEnable !== true); + return ( {!routes.length ? : } diff --git a/assets/src/components/settings/Panels/index.js b/assets/src/components/settings/Panels/index.js index 22489523..307c1aa4 100644 --- a/assets/src/components/settings/Panels/index.js +++ b/assets/src/components/settings/Panels/index.js @@ -34,3 +34,4 @@ export { default as CheckboxGroup } from "./PanelSettings/Fields/CheckboxGroup"; export { default as RadioTemplate } from "./PanelSettings/Fields/RadioTemplate"; export { default as MultiSelectBox } from "./PanelSettings/Fields/MultiSelectBox"; export { default as SingleCheckBox } from "./PanelSettings/Fields/SingleCheckBox"; +export { default as TextRadioBox } from "./PanelSettings/Fields/TextRadioBox"; diff --git a/package.json b/package.json index af306185..eba50cc4 100644 --- a/package.json +++ b/package.json @@ -20,6 +20,7 @@ "watch:upsell-order-bump": "lerna run start --scope='sales-booster-upsell-order-bump'", "watch:bogo": "lerna run start --scope='sales-booster-bogo'", "watch:quick-view": "lerna run start --scope='sales-booster-quick-view'", + "watch:fbt": "lerna run start --scope='sales-booster-frequently-bought'", "build:sales-booster": "lerna run build --scope='sales-booster'", "build:sales-countdown": "lerna run build --scope='sales-booster-sales-countdown'", "build:direct-checkout": "lerna run build --scope='sales-booster-direct-checkout'", @@ -30,6 +31,7 @@ "build:stock-bar": "lerna run build --scope='sales-booster-stock-bar'", "build:upsell-order-bump": "lerna run build --scope='sales-booster-upsell-order-bump'", "build:bogo": "lerna run build --scope='sales-booster-bogo'", + "build:fbt": "lerna run build --scope='sales-booster-frequently-bought'", "build:quick-view": "lerna run build --scope='sales-booster-quick-view'", "test": "echo \"Error: no test specified\" && exit 1" },