From 110884bb436f02799c65eb9869a3c7e21f208980 Mon Sep 17 00:00:00 2001 From: aratidgr8 Date: Wed, 11 Sep 2024 15:27:57 +0530 Subject: [PATCH 01/68] Home page plugins nudge --- build/index.asset.php | 2 +- src/components/OnboardingScreen.js | 2 + src/components/WPSolutionsBanner.js | 62 +++++++++++++++ src/constants.js | 115 +++++++++++++++++++++++++++- 4 files changed, 179 insertions(+), 2 deletions(-) create mode 100644 src/components/WPSolutionsBanner.js diff --git a/build/index.asset.php b/build/index.asset.php index 2dc1add0..943f75f0 100644 --- a/build/index.asset.php +++ b/build/index.asset.php @@ -1 +1 @@ - array('lodash', 'moment', 'react', 'react-dom', 'wp-api-fetch', 'wp-data', 'wp-date', 'wp-dom-ready', 'wp-element', 'wp-i18n', 'wp-url'), 'version' => '00a9f8f0dd08a3e19f74'); + array('lodash', 'moment', 'react', 'react-dom', 'wp-api-fetch', 'wp-data', 'wp-date', 'wp-dom-ready', 'wp-element', 'wp-i18n', 'wp-url'), 'version' => '0ab6c46028a4ea17c625'); diff --git a/src/components/OnboardingScreen.js b/src/components/OnboardingScreen.js index 58c86547..5fe842d7 100644 --- a/src/components/OnboardingScreen.js +++ b/src/components/OnboardingScreen.js @@ -10,6 +10,7 @@ import { OnboardingList } from "./OnboardingList"; import { Section } from "./Section"; import { SiteStatus } from "./SiteStatus"; import { WordPressSdk } from "../sdk/wordpress"; +import { WPSolutionsBanner } from "./WPSolutionsBanner"; const Text = { Pending: { @@ -200,6 +201,7 @@ export function OnboardingScreen({ notify={notify} toggleComingSoon={toggleComingSoon} /> + diff --git a/src/components/WPSolutionsBanner.js b/src/components/WPSolutionsBanner.js new file mode 100644 index 00000000..701a9126 --- /dev/null +++ b/src/components/WPSolutionsBanner.js @@ -0,0 +1,62 @@ +import { Button } from "@newfold/ui-component-library"; +import { wpSolutionsPluginsList } from "../constants" +import { __ } from "@wordpress/i18n"; +import { AnalyticsSdk } from "../sdk/analytics"; +import { useEffect, useState } from "@wordpress/element"; + + +export function WPSolutionsBanner() { + + let purchasedSolution = "services"; + + let [solutionsCards, setSolutionsCards] = useState([{}]); + + let currentSolution = []; + + currentSolution = purchasedSolution === "creator" ? + wpSolutionsPluginsList[0]['creator'] : + purchasedSolution === "services" ? + wpSolutionsPluginsList[0]['services'] : + purchasedSolution === "ecommerce" ? + wpSolutionsPluginsList[0]['ecommerce'] : wpSolutionsPluginsList[0]['none']; + + //console.log(Object.values(currentSolution), "currentSolution"); + + useEffect(() => { + let tempSolutionsCards = Object.values(currentSolution); + //console.log(tempSolutionsCards, "tempSolutionsCards"); + + setSolutionsCards(tempSolutionsCards); + }, [purchasedSolution]); + + + //console.log(solutionsCards, Array.isArray(solutionsCards), "solutionsCards"); + + return( +
+ +
+

+ {__("Explore Your Plugins and Tools", "wp-module-ecommerce")} +

+

+ {__("Improve your site with the tools and services included in your plan.", "wp-module-ecommerce")} +

+
+ +
+ { + solutionsCards.map((details) => { + return (
+

{details['title']}

+

{details['description']}

+ +
) + }) + } +
+
+ ) +} \ No newline at end of file diff --git a/src/constants.js b/src/constants.js index fba2586e..2a692df7 100644 --- a/src/constants.js +++ b/src/constants.js @@ -43,4 +43,117 @@ export const wonderCartPopularCampaignsList = [ title: "Last Minute Deal", description: "Create urgency with a special time-limited deal for customers on the cart and checkout pages." } -]; \ No newline at end of file +]; + + +export const wpSolutionsPluginsList = [ + { + "creator": [ + { + title: "WEBPAGE CREATION", + description: "Build webpages fast with tailored block patterns and page templates included in your hosting package.", + buttonText: "Add a Page to Your Site", + href: "" + }, + { + title: "SEARCH ENGINE OPTIMIZATION", + description: "Start increasing your search result rankings today.", + buttonText: "Improve Your Search Ranking", + href: "" + }, + { + title: "OFFER CONTENT COURSES", + description: "Create beautiful and engaging online courses, lessons, and quizzes.", + buttonText: "Create a Course", + href: "" + }, + { + title: "ADD AN AFFILIATE PROGRAM", + description: "Grant your affiliates earnings each time someone purchases from their link.", + buttonText: "Create an Affiliate Program", + href: "" + } + ], + "services": [ + { + title: "SETUP BOOKINGS", + description: "Manage the renting or booking of services and items that you offer your customers.", + buttonText: "Setup Bookings", + href: "" + }, + { + title: "WEBPAGE CREATION", + description: "Build webpages fast with tailored block patterns and page templates.", + buttonText: "Add a Page to Your Site", + href: "" + }, + { + title: "SEARCH ENGINE OPTIMIZATION", + description: "Start increasing your search result rankings today.", + buttonText: "Improve Your Search Ranking", + href: "" + }, + { + title: "SETUP A LOYALTY PROGRAM", + description: "Reward customer loyalty with an effective points program.", + buttonText: "Configure Points & Rewards", + href: "" + }, + + ], + "ecommerce": [ + { + title: "SETUP WISHLISTS", + description: "Let customers add products to lists and share them with family and friends.", + buttonText: "Setup Wishilsts", + href: "" + }, + { + title: "ENABLE PRODUCT REVIEWS", + description: "Get positive product reviews and use social proof to drive more sales.", + buttonText: "Enable Product Reviews", + href: "" + }, + { + title: "CREATE A SALES CAMPAIGN", + description: "Create custom upsell, cross-sell and other promotional campaigns to generate more sales.", + buttonText: "Create a Campaign", + href: "" + }, + { + title: "SEARCH ENGINE OPTIMIZATION", + description: "Start increasing your search result rankings today.", + buttonText: "Improve Your Search Ranking", + href: "" + }, + + ], + "none": [ + { + title: "SETUP WISHLISTS", + description: "Let customers add products to lists and share them with family and friends.", + buttonText: "Setup Wishilsts", + href: "" + }, + { + title: "ENABLE PRODUCT REVIEWS", + description: "Get positive product reviews and use social proof to drive more sales.", + buttonText: "Enable Product Reviews", + href: "" + }, + { + title: "CREATE A SALES CAMPAIGN", + description: "Create custom upsell, cross-sell and other promotional campaigns to generate more sales.", + buttonText: "Create a Campaign", + href: "" + }, + { + title: "SEARCH ENGINE OPTIMIZATION", + description: "Start increasing your search result rankings today.", + buttonText: "Improve Your Search Ranking", + href: "" + }, + ], + + } +] \ No newline at end of file From 0451508b80a2dfb739474b8f1d58259c9faaf23a Mon Sep 17 00:00:00 2001 From: aratidgr8 Date: Wed, 11 Sep 2024 19:03:40 +0530 Subject: [PATCH 02/68] Logic to display solutions banner component on Home page --- build/index.asset.php | 2 +- src/components/WPSolutionsBanner.js | 92 ++++++++++++++++------------- src/icons/right-arrow.svg | 3 + 3 files changed, 56 insertions(+), 41 deletions(-) create mode 100644 src/icons/right-arrow.svg diff --git a/build/index.asset.php b/build/index.asset.php index 943f75f0..cca010de 100644 --- a/build/index.asset.php +++ b/build/index.asset.php @@ -1 +1 @@ - array('lodash', 'moment', 'react', 'react-dom', 'wp-api-fetch', 'wp-data', 'wp-date', 'wp-dom-ready', 'wp-element', 'wp-i18n', 'wp-url'), 'version' => '0ab6c46028a4ea17c625'); + array('lodash', 'moment', 'react', 'react-dom', 'wp-api-fetch', 'wp-data', 'wp-date', 'wp-dom-ready', 'wp-element', 'wp-i18n', 'wp-url'), 'version' => '2c8c51e1e85a11bbbfaa'); diff --git a/src/components/WPSolutionsBanner.js b/src/components/WPSolutionsBanner.js index 701a9126..7fdeefd5 100644 --- a/src/components/WPSolutionsBanner.js +++ b/src/components/WPSolutionsBanner.js @@ -1,62 +1,74 @@ import { Button } from "@newfold/ui-component-library"; -import { wpSolutionsPluginsList } from "../constants" -import { __ } from "@wordpress/i18n"; -import { AnalyticsSdk } from "../sdk/analytics"; import { useEffect, useState } from "@wordpress/element"; +import { __ } from "@wordpress/i18n"; +import { wpSolutionsPluginsList } from "../constants"; +import { ReactComponent as RightArrow } from "../icons/right-arrow.svg"; +import { Section } from "./Section"; export function WPSolutionsBanner() { - let purchasedSolution = "services"; + + /* + * + * This is static mock value added only for coding purpose + * Actual value of purchased solution will be retrived from API call, discussed with @Diwanshu, @Vara to work on it. + * + */ + let purchasedSolution = "creator"; let [solutionsCards, setSolutionsCards] = useState([{}]); - let currentSolution = []; - currentSolution = purchasedSolution === "creator" ? - wpSolutionsPluginsList[0]['creator'] : - purchasedSolution === "services" ? - wpSolutionsPluginsList[0]['services'] : - purchasedSolution === "ecommerce" ? - wpSolutionsPluginsList[0]['ecommerce'] : wpSolutionsPluginsList[0]['none']; + useEffect(() => { - //console.log(Object.values(currentSolution), "currentSolution"); + currentSolution = purchasedSolution === "creator" ? + wpSolutionsPluginsList[0]['creator'] : + purchasedSolution === "services" ? + wpSolutionsPluginsList[0]['services'] : + purchasedSolution === "ecommerce" ? + wpSolutionsPluginsList[0]['ecommerce'] : wpSolutionsPluginsList[0]['none']; + + //console.log(Object.values(currentSolution), "currentSolution"); - useEffect(() => { let tempSolutionsCards = Object.values(currentSolution); //console.log(tempSolutionsCards, "tempSolutionsCards"); setSolutionsCards(tempSolutionsCards); }, [purchasedSolution]); - //console.log(solutionsCards, Array.isArray(solutionsCards), "solutionsCards"); - return( -
- -
-

- {__("Explore Your Plugins and Tools", "wp-module-ecommerce")} -

-

- {__("Improve your site with the tools and services included in your plan.", "wp-module-ecommerce")} -

-
- -
- { - solutionsCards.map((details) => { - return (
-

{details['title']}

-

{details['description']}

- -
) - }) - } -
-
+ return( + + + +
+ { + solutionsCards.map((details) => { + return (
+

+ {details['title']} +

+

+ {details['description']} +

+ +
) + }) + } +
+ +
+
) } \ No newline at end of file diff --git a/src/icons/right-arrow.svg b/src/icons/right-arrow.svg new file mode 100644 index 00000000..2447e3b8 --- /dev/null +++ b/src/icons/right-arrow.svg @@ -0,0 +1,3 @@ + + + From e05643eeb5a4638f82c515b6d9c739c1172ad887 Mon Sep 17 00:00:00 2001 From: aratidgr8 Date: Wed, 11 Sep 2024 20:01:55 +0530 Subject: [PATCH 03/68] Logic to display solutions banner component on Home page --- build/index.asset.php | 2 +- src/components/WPSolutionsBanner.js | 16 +++++++--------- 2 files changed, 8 insertions(+), 10 deletions(-) diff --git a/build/index.asset.php b/build/index.asset.php index cca010de..fed8a80d 100644 --- a/build/index.asset.php +++ b/build/index.asset.php @@ -1 +1 @@ - array('lodash', 'moment', 'react', 'react-dom', 'wp-api-fetch', 'wp-data', 'wp-date', 'wp-dom-ready', 'wp-element', 'wp-i18n', 'wp-url'), 'version' => '2c8c51e1e85a11bbbfaa'); + array('lodash', 'moment', 'react', 'react-dom', 'wp-api-fetch', 'wp-data', 'wp-date', 'wp-dom-ready', 'wp-element', 'wp-i18n', 'wp-url'), 'version' => '25dc2bd25b1ddb26107e'); diff --git a/src/components/WPSolutionsBanner.js b/src/components/WPSolutionsBanner.js index 7fdeefd5..890bf590 100644 --- a/src/components/WPSolutionsBanner.js +++ b/src/components/WPSolutionsBanner.js @@ -7,12 +7,10 @@ import { Section } from "./Section"; export function WPSolutionsBanner() { - - /* * * This is static mock value added only for coding purpose - * Actual value of purchased solution will be retrived from API call, discussed with @Diwanshu, @Vara to work on it. + * Actual value of "purchased solution" will be retrived from API call, @Vara to work on the API. * */ let purchasedSolution = "creator"; @@ -44,20 +42,20 @@ export function WPSolutionsBanner() { -
+
{ - solutionsCards.map((details) => { - return (
+ solutionsCards.map((details, index) => { + return (

{details['title']}

-

+

{details['description']}

- From e291d373e2ca951b5f913b0657bae34756e7679c Mon Sep 17 00:00:00 2001 From: aratidgr8 Date: Wed, 11 Sep 2024 20:22:28 +0530 Subject: [PATCH 04/68] Remove WPSolutionsBanner from Ecommerce and load directly in BlueHost --- build/index.asset.php | 2 +- src/components/OnboardingScreen.js | 4 +--- 2 files changed, 2 insertions(+), 4 deletions(-) diff --git a/build/index.asset.php b/build/index.asset.php index fed8a80d..f745458d 100644 --- a/build/index.asset.php +++ b/build/index.asset.php @@ -1 +1 @@ - array('lodash', 'moment', 'react', 'react-dom', 'wp-api-fetch', 'wp-data', 'wp-date', 'wp-dom-ready', 'wp-element', 'wp-i18n', 'wp-url'), 'version' => '25dc2bd25b1ddb26107e'); + array('lodash', 'moment', 'react', 'react-dom', 'wp-api-fetch', 'wp-data', 'wp-date', 'wp-dom-ready', 'wp-element', 'wp-i18n', 'wp-url'), 'version' => '2360e9e11ca32fec0609'); diff --git a/src/components/OnboardingScreen.js b/src/components/OnboardingScreen.js index 5fe842d7..af3b0206 100644 --- a/src/components/OnboardingScreen.js +++ b/src/components/OnboardingScreen.js @@ -10,7 +10,6 @@ import { OnboardingList } from "./OnboardingList"; import { Section } from "./Section"; import { SiteStatus } from "./SiteStatus"; import { WordPressSdk } from "../sdk/wordpress"; -import { WPSolutionsBanner } from "./WPSolutionsBanner"; const Text = { Pending: { @@ -200,8 +199,7 @@ export function OnboardingScreen({ comingSoon={comingSoon} notify={notify} toggleComingSoon={toggleComingSoon} - /> - + />
From 50098e631ef3b8a613460e907fc5afd68d4b1c19 Mon Sep 17 00:00:00 2001 From: aratidgr8 Date: Wed, 11 Sep 2024 20:26:02 +0530 Subject: [PATCH 05/68] Export WPSolutionsBanner file as component from Ecommerce module to BlueHost --- build/index.asset.php | 2 +- src/index.js | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/build/index.asset.php b/build/index.asset.php index f745458d..23326914 100644 --- a/build/index.asset.php +++ b/build/index.asset.php @@ -1 +1 @@ - array('lodash', 'moment', 'react', 'react-dom', 'wp-api-fetch', 'wp-data', 'wp-date', 'wp-dom-ready', 'wp-element', 'wp-i18n', 'wp-url'), 'version' => '2360e9e11ca32fec0609'); + array('lodash', 'moment', 'react', 'react-dom', 'wp-api-fetch', 'wp-data', 'wp-date', 'wp-dom-ready', 'wp-element', 'wp-i18n', 'wp-url'), 'version' => 'b1f7e24ca2c7fd5bf5c3'); diff --git a/src/index.js b/src/index.js index b6d8985c..8b201a2c 100644 --- a/src/index.js +++ b/src/index.js @@ -93,3 +93,4 @@ export function NewfoldECommerce(props) { export * from "./components/FreePlugins"; export * from "./components/OnboardingScreen"; +export * from "./components/WPSolutionsBanner"; From c3867d2cfb40b673bbe88cd1e5ae64665c7d6c74 Mon Sep 17 00:00:00 2001 From: aratidgr8 Date: Fri, 13 Sep 2024 19:27:20 +0530 Subject: [PATCH 06/68] No existing plan view of Homepage - PRESS0-2229 --- build/index.asset.php | 2 +- src/components/NoExistingPlan.js | 156 ++++++++++++++++++++++++++++ src/components/WPSolutionsBanner.js | 7 +- src/icons/green-tick.svg | 3 + 4 files changed, 166 insertions(+), 2 deletions(-) create mode 100644 src/components/NoExistingPlan.js create mode 100644 src/icons/green-tick.svg diff --git a/build/index.asset.php b/build/index.asset.php index 23326914..7a7008ad 100644 --- a/build/index.asset.php +++ b/build/index.asset.php @@ -1 +1 @@ - array('lodash', 'moment', 'react', 'react-dom', 'wp-api-fetch', 'wp-data', 'wp-date', 'wp-dom-ready', 'wp-element', 'wp-i18n', 'wp-url'), 'version' => 'b1f7e24ca2c7fd5bf5c3'); + array('lodash', 'moment', 'react', 'react-dom', 'wp-api-fetch', 'wp-data', 'wp-date', 'wp-dom-ready', 'wp-element', 'wp-i18n', 'wp-url'), 'version' => 'b11ad9822cad98b6905c'); diff --git a/src/components/NoExistingPlan.js b/src/components/NoExistingPlan.js new file mode 100644 index 00000000..f54ae692 --- /dev/null +++ b/src/components/NoExistingPlan.js @@ -0,0 +1,156 @@ +import { Button } from "@newfold/ui-component-library"; +import { useEffect, useState } from "@wordpress/element"; +import { __ } from "@wordpress/i18n"; +import { Section } from "./Section"; +import { ReactComponent as GreenTick } from "../icons/green-tick.svg"; + + +export function NoExistingPlan(){ + return( + + + + +
+

+ {__("CONTENT CREATOR", "wp-module-ecommerce")} +

+
+

+ {__("Manage your site, build your brand, and monetize your content with essential tools.", "wp-module-ecommerce")} +

+
+
+
    +
  • + + + {__("Monetize Content with Ease", "wp-module-ecommerce")} + +
  • +
  • + + + {__("6 Exclusive Marketing Plugins", "wp-module-ecommerce")} + +
  • +
+
    +
  • + + + {__("4 Exclusive Social Media Plugins", "wp-module-ecommerce")} + +
  • +
  • + + + {__("Secure Payment Gateway Included", "wp-module-ecommerce")} + +
  • +
+ +
+
+ +
+

+ {__("SERVICE BUSINESS", "wp-module-ecommerce")} +

+
+

+ {__("Boost local visibility and streamline your business operations with specialized tools.", "wp-module-ecommerce")} +

+ +
+ +
+
    +
  • + + + {__("Includes the Content Creator bundle", "wp-module-ecommerce")} + +
  • +
  • + + + {__("Integrated Invoicing", "wp-module-ecommerce")} + +
  • +
+
    +
  • + + + {__("8 Exclusive Local Business Plugins", "wp-module-ecommerce")} + +
  • +
  • + + + {__("Local Social Media and SEO Plugins", "wp-module-ecommerce")} + +
  • +
+ +
+ +
+ +
+

+ {__("COMMERCE", "wp-module-ecommerce")} +

+
+

+ {__("Manage your site, build your brand, and monetize your content with essential tools.", "wp-module-ecommerce")} +

+ +
+
+
    +
  • + + + {__("Includes the Service Business bundle", "wp-module-ecommerce")} + +
  • +
  • + + + {__("24 Exclusive eCommerce Plugins", "wp-module-ecommerce")} + +
  • +
+
    +
  • + + + {__("Express 1-Click Checkout", "wp-module-ecommerce")} + +
  • +
  • + + + {__("Customizable Customer Account Creation", "wp-module-ecommerce")} + +
  • +
+ +
+
+ +
+
+ ) +} \ No newline at end of file diff --git a/src/components/WPSolutionsBanner.js b/src/components/WPSolutionsBanner.js index 890bf590..828f6849 100644 --- a/src/components/WPSolutionsBanner.js +++ b/src/components/WPSolutionsBanner.js @@ -4,6 +4,7 @@ import { __ } from "@wordpress/i18n"; import { wpSolutionsPluginsList } from "../constants"; import { ReactComponent as RightArrow } from "../icons/right-arrow.svg"; import { Section } from "./Section"; +import { NoExistingPlan } from "./NoExistingPlan"; export function WPSolutionsBanner() { @@ -13,7 +14,11 @@ export function WPSolutionsBanner() { * Actual value of "purchased solution" will be retrived from API call, @Vara to work on the API. * */ - let purchasedSolution = "creator"; + let purchasedSolution = ""; + + if (purchasedSolution === "") { + return (); + } let [solutionsCards, setSolutionsCards] = useState([{}]); let currentSolution = []; diff --git a/src/icons/green-tick.svg b/src/icons/green-tick.svg new file mode 100644 index 00000000..5ef1ca23 --- /dev/null +++ b/src/icons/green-tick.svg @@ -0,0 +1,3 @@ + + + From f6f3af3ac54e13d63692e3645dfd8e4fef103d52 Mon Sep 17 00:00:00 2001 From: aratidgr8 Date: Fri, 13 Sep 2024 20:32:04 +0530 Subject: [PATCH 07/68] No existing plan view of Homepage - PRESS0-2229 --- build/index.asset.php | 2 +- src/components/NoExistingPlan.js | 58 +++++++++++++++++++++++++------- src/icons/fifty-off.svg | 4 +++ 3 files changed, 51 insertions(+), 13 deletions(-) create mode 100644 src/icons/fifty-off.svg diff --git a/build/index.asset.php b/build/index.asset.php index 7a7008ad..c0e83c50 100644 --- a/build/index.asset.php +++ b/build/index.asset.php @@ -1 +1 @@ - array('lodash', 'moment', 'react', 'react-dom', 'wp-api-fetch', 'wp-data', 'wp-date', 'wp-dom-ready', 'wp-element', 'wp-i18n', 'wp-url'), 'version' => 'b11ad9822cad98b6905c'); + array('lodash', 'moment', 'react', 'react-dom', 'wp-api-fetch', 'wp-data', 'wp-date', 'wp-dom-ready', 'wp-element', 'wp-i18n', 'wp-url'), 'version' => '8bcd77f9d4138c07dfb4'); diff --git a/src/components/NoExistingPlan.js b/src/components/NoExistingPlan.js index f54ae692..a8717cee 100644 --- a/src/components/NoExistingPlan.js +++ b/src/components/NoExistingPlan.js @@ -3,6 +3,7 @@ import { useEffect, useState } from "@wordpress/element"; import { __ } from "@wordpress/i18n"; import { Section } from "./Section"; import { ReactComponent as GreenTick } from "../icons/green-tick.svg"; +import { ReactComponent as FiftyOff } from "../icons/fifty-off.svg"; export function NoExistingPlan(){ @@ -14,16 +15,27 @@ export function NoExistingPlan(){ /> -
+
+

{__("CONTENT CREATOR", "wp-module-ecommerce")}

-
-

+

+

{__("Manage your site, build your brand, and monetize your content with essential tools.", "wp-module-ecommerce")}

+

+ $ 0.00 + + {__("/mo", "wp-module-ecommerce")} + +
+ + {__("Original price ", "wp-module-ecommerce")}$0.00{__("/mo", "wp-module-ecommerce")} + +

-
+
  • @@ -58,18 +70,29 @@ export function NoExistingPlan(){
-
+
+

{__("SERVICE BUSINESS", "wp-module-ecommerce")}

-
-

+

+

{__("Boost local visibility and streamline your business operations with specialized tools.", "wp-module-ecommerce")}

+

+ $ 0.00 + + {__("/mo", "wp-module-ecommerce")} + +
+ + {__("Original price ", "wp-module-ecommerce")}$0.00{__("/mo", "wp-module-ecommerce")} + +

-
+
  • @@ -105,17 +128,28 @@ export function NoExistingPlan(){
-
+
+

{__("COMMERCE", "wp-module-ecommerce")}

-
-

+

+

{__("Manage your site, build your brand, and monetize your content with essential tools.", "wp-module-ecommerce")}

+

+ $ 0.00 + + {__("/mo", "wp-module-ecommerce")} + +
+ + {__("Original price ", "wp-module-ecommerce")}$0.00{__("/mo", "wp-module-ecommerce")} + +

-
+
  • diff --git a/src/icons/fifty-off.svg b/src/icons/fifty-off.svg new file mode 100644 index 00000000..d045b5d2 --- /dev/null +++ b/src/icons/fifty-off.svg @@ -0,0 +1,4 @@ + + + + From aefdd5740579616e3c45e866a8fcb723f7ef6d48 Mon Sep 17 00:00:00 2001 From: aratidgr8 Date: Mon, 16 Sep 2024 15:55:09 +0530 Subject: [PATCH 08/68] PRESS0-2231: Store page CTA for Plugins & Tools page --- build/index.asset.php | 2 +- src/components/YITHPlugins.js | 5 ++++- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/build/index.asset.php b/build/index.asset.php index c0e83c50..1387865b 100644 --- a/build/index.asset.php +++ b/build/index.asset.php @@ -1 +1 @@ - array('lodash', 'moment', 'react', 'react-dom', 'wp-api-fetch', 'wp-data', 'wp-date', 'wp-dom-ready', 'wp-element', 'wp-i18n', 'wp-url'), 'version' => '8bcd77f9d4138c07dfb4'); + array('lodash', 'moment', 'react', 'react-dom', 'wp-api-fetch', 'wp-data', 'wp-date', 'wp-dom-ready', 'wp-element', 'wp-i18n', 'wp-url'), 'version' => '0df5c5833a7e41a5ac89'); diff --git a/src/components/YITHPlugins.js b/src/components/YITHPlugins.js index 737d3ebc..2d1e75ab 100644 --- a/src/components/YITHPlugins.js +++ b/src/components/YITHPlugins.js @@ -1,5 +1,5 @@ import { __ } from "@wordpress/i18n"; -import { Modal, Spinner } from "@newfold/ui-component-library"; +import { Button, Modal, Spinner } from "@newfold/ui-component-library"; import { YITHPluginsDefinitions } from "../configs/YITHPlugins.config"; import { Section } from "./Section"; import { useCardManager } from "./useCardManager"; @@ -127,6 +127,9 @@ export function YITHPlugins({ wpModules }) { "Unlock the full power of your plan with access to a range of exclusive WooCommerce tools powered by \nYITH. Enhance your store and keep your customers coming back for more!", "wp-module-ecommerce" )} +
From 1db15d8deda350925549ee8a153e870271269cfa Mon Sep 17 00:00:00 2001 From: aratidgr8 Date: Tue, 24 Sep 2024 19:27:58 +0530 Subject: [PATCH 09/68] PRESS0-1719: Add WP entitlements to Next Steps --- build/index.asset.php | 2 +- src/components/WPSolutionsBanner.js | 12 +++++++++--- src/components/YITHPlugins.js | 3 ++- src/configs/OnboardingList.config.js | 24 +++++++++++++++++++++++- src/configs/selectors.js | 8 ++++++++ 5 files changed, 43 insertions(+), 6 deletions(-) diff --git a/build/index.asset.php b/build/index.asset.php index 1387865b..ddee6e21 100644 --- a/build/index.asset.php +++ b/build/index.asset.php @@ -1 +1 @@ - array('lodash', 'moment', 'react', 'react-dom', 'wp-api-fetch', 'wp-data', 'wp-date', 'wp-dom-ready', 'wp-element', 'wp-i18n', 'wp-url'), 'version' => '0df5c5833a7e41a5ac89'); + array('lodash', 'moment', 'react', 'react-dom', 'wp-api-fetch', 'wp-data', 'wp-date', 'wp-dom-ready', 'wp-element', 'wp-i18n', 'wp-url'), 'version' => '9ca79b58289b8a1e7632'); diff --git a/src/components/WPSolutionsBanner.js b/src/components/WPSolutionsBanner.js index 828f6849..71dad75c 100644 --- a/src/components/WPSolutionsBanner.js +++ b/src/components/WPSolutionsBanner.js @@ -14,7 +14,13 @@ export function WPSolutionsBanner() { * Actual value of "purchased solution" will be retrived from API call, @Vara to work on the API. * */ - let purchasedSolution = ""; + let purchasedSolution = "creator"; + + const myPluginsAndToolsPageLink = `${window.location.href.split('#')[0]}#/my_plugins_and_tools`; + + const routeChange = () =>{ + location.href = myPluginsAndToolsPageLink; + } if (purchasedSolution === "") { return (); @@ -47,7 +53,7 @@ export function WPSolutionsBanner() {
@@ -68,7 +74,7 @@ export function WPSolutionsBanner() { }) }
-
diff --git a/src/components/YITHPlugins.js b/src/components/YITHPlugins.js index 2d1e75ab..ba796cf1 100644 --- a/src/components/YITHPlugins.js +++ b/src/components/YITHPlugins.js @@ -15,6 +15,7 @@ export function YITHPlugins({ wpModules }) { const [isOpen, setIsOpen] = useState(false); const [pluginName, setPluginName] = useState(""); const [yithProducts, setYithProducts] = useState([]); + const myPluginsAndToolsPageLink = `${window.location.href.split('#')[0]}#/my_plugins_and_tools`; let anyPluginActive = 0; const [yithPluginsMap, setYithPluginsMap] = useState(new Map([ [ @@ -127,7 +128,7 @@ export function YITHPlugins({ wpModules }) { "Unlock the full power of your plan with access to a range of exclusive WooCommerce tools powered by \nYITH. Enhance your store and keep your customers coming back for more!", "wp-module-ecommerce" )} -
diff --git a/src/configs/OnboardingList.config.js b/src/configs/OnboardingList.config.js index 3f9b11cc..c2a97907 100644 --- a/src/configs/OnboardingList.config.js +++ b/src/configs/OnboardingList.config.js @@ -16,7 +16,8 @@ import { yithOnboardingStoreParser, getOrderList, get_tax_configured, - get_settings_list + get_settings_list, + getMyPluginAndToolsDetails } from "./selectors"; import { brandName, check_url_match } from "./Utility"; import { VIEW_GUIDE_LINK } from "../constants"; @@ -67,6 +68,10 @@ const signUpYoastSEOAcademy = () => { AnalyticsSdk.track("next_step", "next_step_yoast_academy_clicked", data); }; +const clickMyPluginAndTools = () => { + AnalyticsSdk.track("next_step", "next_step_my_plugins_and_tools_clicked", data); +}; + export function OnboardingListDefinition(props) { const installJetpack = createPluginInstallAction("jetpack", 20, props); return { @@ -79,6 +84,23 @@ export function OnboardingListDefinition(props) { orders: WooCommerceSdk.orders.get }, cards: [ + { + name:"Explore the features included with your solution", + id: "mypluginsandtools", + text: __("Explore the features included with your solution", "wp-module-ecommerce"), + state: { + isAvailable: (queries) => queries?.settings?.hasBrandSignedUp, + isCompleted: (queries) => !(queries?.settings?.hasBrandSignedUp), + url: () => + `${window.location.href.split('#')[0]}#/my_plugins_and_tools`, + target: () => "_blank", + }, + shouldRender: () => (state) => state.isAvailable, + actions: { + manage: () => clickMyPluginAndTools(), + }, + queries: [{ key: "settings", selector: getMyPluginAndToolsDetails() }], + }, { name: "Update your website nameservers", id: "nameservers", diff --git a/src/configs/selectors.js b/src/configs/selectors.js index 24729b33..d29ef47e 100644 --- a/src/configs/selectors.js +++ b/src/configs/selectors.js @@ -1,3 +1,5 @@ +import { NewfoldRuntime } from "@newfold-labs/wp-module-runtime"; + export const wcTasksParser = (title) => (data) => { const isCompleted = (data?.[0]?.tasks ?? []).find( (task) => task.id === title @@ -65,6 +67,12 @@ export const getAcademyEnrollmentDetails = () => (data) => { }; }; +export const getMyPluginAndToolsDetails = () => (data) => { + return { + hasBrandSignedUp: NewfoldRuntime['plugin']['brand'].includes('bluehost'), + }; +}; + export const getOrderList = () => (ordersList) => { return { pendingOrders: ordersList.filter(order => (order.status === 'processing') || (order.status === 'on-hold') || (order.status === 'pending')), From 405515f07d030e56c514c68285d0e8911387becd Mon Sep 17 00:00:00 2001 From: aratidgr8 Date: Mon, 30 Sep 2024 19:27:05 +0530 Subject: [PATCH 10/68] Updated Solutions Banner Component as per entitlements API response --- build/index.asset.php | 2 +- src/components/WPSolutionsBanner.js | 163 +++++++++++++++++----------- src/constants.js | 47 +++++++- 3 files changed, 143 insertions(+), 69 deletions(-) diff --git a/build/index.asset.php b/build/index.asset.php index ddee6e21..35ce8682 100644 --- a/build/index.asset.php +++ b/build/index.asset.php @@ -1 +1 @@ - array('lodash', 'moment', 'react', 'react-dom', 'wp-api-fetch', 'wp-data', 'wp-date', 'wp-dom-ready', 'wp-element', 'wp-i18n', 'wp-url'), 'version' => '9ca79b58289b8a1e7632'); + array('lodash', 'moment', 'react', 'react-dom', 'wp-api-fetch', 'wp-data', 'wp-date', 'wp-dom-ready', 'wp-element', 'wp-i18n', 'wp-url'), 'version' => '37363feabad0ef1d1deb'); diff --git a/src/components/WPSolutionsBanner.js b/src/components/WPSolutionsBanner.js index 71dad75c..4f55e9b5 100644 --- a/src/components/WPSolutionsBanner.js +++ b/src/components/WPSolutionsBanner.js @@ -1,83 +1,118 @@ -import { Button } from "@newfold/ui-component-library"; +import { ExclamationTriangleIcon } from "@heroicons/react/24/outline"; +import { NewfoldRuntime } from "@newfold-labs/wp-module-runtime"; +import { Button, Spinner } from "@newfold/ui-component-library"; +import apiFetch from '@wordpress/api-fetch'; import { useEffect, useState } from "@wordpress/element"; import { __ } from "@wordpress/i18n"; import { wpSolutionsPluginsList } from "../constants"; import { ReactComponent as RightArrow } from "../icons/right-arrow.svg"; -import { Section } from "./Section"; import { NoExistingPlan } from "./NoExistingPlan"; +import { Section } from "./Section"; export function WPSolutionsBanner() { - /* - * - * This is static mock value added only for coding purpose - * Actual value of "purchased solution" will be retrived from API call, @Vara to work on the API. - * - */ - let purchasedSolution = "creator"; + /** + * + * TODO: To be tested with actual API call response. + * Code built using sample API response shared in this PR - https://github.com/newfold-labs/wp-module-solutions/pull/2 + * + **/ + + const entitlementsEndPoint = NewfoldRuntime.createApiUrl("/newfold-solutions/v1/entitlements"); + const [ error, setError ] = useState(null); + const [ mySolution, setMySolution ] = useState(null); + const [ isLoaded, setIsLoaded ] = useState( false ); + const [ purchasedSolution, setPurchasedSolution] = useState("Creator") + const [ availableSolutions, setAvailableSolutions] = useState([]); + const [solutionsCards, setSolutionsCards] = useState([{}]); + let currentSolution = []; - const myPluginsAndToolsPageLink = `${window.location.href.split('#')[0]}#/my_plugins_and_tools`; + const myPluginsAndToolsPageLink = `${window.location.href.split('#')[0]}#/my_plugins_and_tools`; const routeChange = () =>{ location.href = myPluginsAndToolsPageLink; } - if (purchasedSolution === "") { - return (); - } - - let [solutionsCards, setSolutionsCards] = useState([{}]); - let currentSolution = []; - - useEffect(() => { - - currentSolution = purchasedSolution === "creator" ? - wpSolutionsPluginsList[0]['creator'] : - purchasedSolution === "services" ? - wpSolutionsPluginsList[0]['services'] : - purchasedSolution === "ecommerce" ? - wpSolutionsPluginsList[0]['ecommerce'] : wpSolutionsPluginsList[0]['none']; + useEffect( () => { + apiFetch( { path: `${ entitlementsEndPoint }` } ).then( + ( result ) => { + setIsLoaded( true ); + setMySolution( result ); + }, + ( error ) => { + setIsLoaded( true ); + setError( error ); + } + ); + }, [] ); - //console.log(Object.values(currentSolution), "currentSolution"); + if ( error ) { + console.log(error.message, "error"); + return ( +
+ + {__("Oops! something went wrong. Please try again later", "wp-module-ecommerce")} +
+ ); + } else if (!isLoaded){ + return ( +
+ +
+ ); + } else if (mySolution) { + setPurchasedSolution(mySolution.solution) + if (purchasedSolution === null) { + setAvailableSolutions(mySolution.solutions) + return (); + } + else{ + currentSolution = purchasedSolution === "Creator" ? + wpSolutionsPluginsList[0]['Creator'] : + purchasedSolution === "Agency" ? + wpSolutionsPluginsList[0]['Agency'] : + purchasedSolution === "Commerce" ? + wpSolutionsPluginsList[0]['Commerce'] : wpSolutionsPluginsList[0]['none']; - let tempSolutionsCards = Object.values(currentSolution); - //console.log(tempSolutionsCards, "tempSolutionsCards"); + //console.log(Object.values(currentSolution), "currentSolution"); - setSolutionsCards(tempSolutionsCards); - }, [purchasedSolution]); + let tempSolutionsCards = Object.values(currentSolution); + //console.log(tempSolutionsCards, "tempSolutionsCards"); - //console.log(solutionsCards, Array.isArray(solutionsCards), "solutionsCards"); - - return( - - - -
- { - solutionsCards.map((details, index) => { - return (
-

- {details['title']} -

-

- {details['description']} -

- -
) - }) - } -
- -
-
- ) + setSolutionsCards(tempSolutionsCards); + return( + + + +
+ { + solutionsCards.map((details, index) => { + return (
+

+ { __(`${details['title']}`,"wp-module-ecommerce") } +

+

+ { __(`${details['description']}`,"wp-module-ecommerce") } +

+ +
) + }) + } +
+ +
+
+ ) + } + + } } \ No newline at end of file diff --git a/src/constants.js b/src/constants.js index 2a692df7..5f849349 100644 --- a/src/constants.js +++ b/src/constants.js @@ -48,7 +48,7 @@ export const wonderCartPopularCampaignsList = [ export const wpSolutionsPluginsList = [ { - "creator": [ + "Creator": [ { title: "WEBPAGE CREATION", description: "Build webpages fast with tailored block patterns and page templates included in your hosting package.", @@ -74,7 +74,7 @@ export const wpSolutionsPluginsList = [ href: "" } ], - "services": [ + "Agency": [ { title: "SETUP BOOKINGS", description: "Manage the renting or booking of services and items that you offer your customers.", @@ -101,7 +101,7 @@ export const wpSolutionsPluginsList = [ }, ], - "ecommerce": [ + "Commerce": [ { title: "SETUP WISHLISTS", description: "Let customers add products to lists and share them with family and friends.", @@ -156,4 +156,43 @@ export const wpSolutionsPluginsList = [ ], } -] \ No newline at end of file +] + + +const solutionsMockAPIResponse = { + "solution": null, + "entitlements": [], + "categories": [], + "solutions": [ + { + "name": "Commerce", + "sku": "SOLUTIONS_COMMERCE", + "description": "Incidunt deleniti veritatis consectetur odio beatae dolores voluptatem. Temporibus eaque sunt aut consequuntur. Aut magni voluptatem minus temporibus distinctio et voluptatem.", + "price": "22.92", + "fullPrice": "35.08", + "url": "http://www.schumm.info/quaerat-asperiores-velit-consequuntur-iure-sequi-aut-deleniti", + "ctbId": null, + "features": null + }, + { + "name": "Agency", + "sku": "SOLUTIONS_SERVICE", + "description": "Qui saepe et sunt dignissimos autem nam. Quo occaecati ea iste ducimus. Hic mollitia sequi rerum eum error. Quo at sed suscipit tempore qui sequi.", + "price": "24.09", + "fullPrice": "33.30", + "url": "http://boyer.com/odit-nobis-ut-est", + "ctbId": null, + "features": null + }, + { + "name": "Creator", + "sku": "SOLUTIONS_CONTENT", + "description": "Consequatur accusantium incidunt quod aut earum vero. Velit rerum sit quibusdam eligendi esse placeat. Molestias aperiam doloremque quo id accusantium ut et sapiente. Ut neque fugiat dolores.", + "price": "27.29", + "fullPrice": "39.76", + "url": "https://www.hegmann.com/maxime-odit-blanditiis-cumque-qui", + "ctbId": null, + "features": null + } + ] +} \ No newline at end of file From 3932ebace310d804173ab0147140d630b5232161 Mon Sep 17 00:00:00 2001 From: aratidgr8 Date: Tue, 1 Oct 2024 19:41:06 +0530 Subject: [PATCH 11/68] Updated code for homepage banner as per solutions API call response - https://github.com/newfold-labs/wp-module-solutions/pull/2 --- build/index.asset.php | 2 +- src/components/NoExistingPlan.js | 225 +++++++--------------------- src/components/WPSolutionsBanner.js | 27 ++-- src/constants.js | 26 ++-- 4 files changed, 82 insertions(+), 198 deletions(-) diff --git a/build/index.asset.php b/build/index.asset.php index 35ce8682..16da3f47 100644 --- a/build/index.asset.php +++ b/build/index.asset.php @@ -1 +1 @@ - array('lodash', 'moment', 'react', 'react-dom', 'wp-api-fetch', 'wp-data', 'wp-date', 'wp-dom-ready', 'wp-element', 'wp-i18n', 'wp-url'), 'version' => '37363feabad0ef1d1deb'); + array('lodash', 'moment', 'react', 'react-dom', 'wp-api-fetch', 'wp-data', 'wp-date', 'wp-dom-ready', 'wp-element', 'wp-i18n', 'wp-url'), 'version' => '935b824352e396ce170f'); diff --git a/src/components/NoExistingPlan.js b/src/components/NoExistingPlan.js index a8717cee..a15bf48c 100644 --- a/src/components/NoExistingPlan.js +++ b/src/components/NoExistingPlan.js @@ -6,184 +6,65 @@ import { ReactComponent as GreenTick } from "../icons/green-tick.svg"; import { ReactComponent as FiftyOff } from "../icons/fifty-off.svg"; -export function NoExistingPlan(){ +export function NoExistingPlan(props){ + const { available } = props; return( - -
- -

- {__("CONTENT CREATOR", "wp-module-ecommerce")} -

-
-

- {__("Manage your site, build your brand, and monetize your content with essential tools.", "wp-module-ecommerce")} -

-

- $ 0.00 - - {__("/mo", "wp-module-ecommerce")} - -
- - {__("Original price ", "wp-module-ecommerce")}$0.00{__("/mo", "wp-module-ecommerce")} - -

-
-
-
    -
  • - - - {__("Monetize Content with Ease", "wp-module-ecommerce")} - -
  • -
  • - - - {__("6 Exclusive Marketing Plugins", "wp-module-ecommerce")} - -
  • -
-
    -
  • - - - {__("4 Exclusive Social Media Plugins", "wp-module-ecommerce")} - -
  • -
  • - - - {__("Secure Payment Gateway Included", "wp-module-ecommerce")} - -
  • -
- -
-
- -
- -

- {__("SERVICE BUSINESS", "wp-module-ecommerce")} -

-
-

- {__("Boost local visibility and streamline your business operations with specialized tools.", "wp-module-ecommerce")} -

-

- $ 0.00 - - {__("/mo", "wp-module-ecommerce")} - -
- - {__("Original price ", "wp-module-ecommerce")}$0.00{__("/mo", "wp-module-ecommerce")} - -

- -
- -
-
    -
  • - - - {__("Includes the Content Creator bundle", "wp-module-ecommerce")} - -
  • -
  • - - - {__("Integrated Invoicing", "wp-module-ecommerce")} - -
  • -
-
    -
  • - - - {__("8 Exclusive Local Business Plugins", "wp-module-ecommerce")} - -
  • -
  • - - - {__("Local Social Media and SEO Plugins", "wp-module-ecommerce")} - -
  • -
- -
- -
- -
- -

- {__("COMMERCE", "wp-module-ecommerce")} -

-
-

- {__("Manage your site, build your brand, and monetize your content with essential tools.", "wp-module-ecommerce")} -

-

- $ 0.00 - - {__("/mo", "wp-module-ecommerce")} - -
- - {__("Original price ", "wp-module-ecommerce")}$0.00{__("/mo", "wp-module-ecommerce")} - -

- -
-
-
    -
  • - - - {__("Includes the Service Business bundle", "wp-module-ecommerce")} - -
  • -
  • - - - {__("24 Exclusive eCommerce Plugins", "wp-module-ecommerce")} - -
  • -
-
    -
  • - - - {__("Express 1-Click Checkout", "wp-module-ecommerce")} - -
  • -
  • - - - {__("Customizable Customer Account Creation", "wp-module-ecommerce")} - -
  • -
- -
-
- + { + available?.map((solution) => { + return( +
+ +

+ { __(`${solution.name.toUpperCase()}`, "wp-module-ecommerce") } +

+
+

+ {__(`${solution.description}`, "wp-module-ecommerce")} +

+

+ {solution.price} + + {__("/mo", "wp-module-ecommerce")} + +
+ + {__("Original price ", "wp-module-ecommerce")} + {solution.fullPrice} + {__("/mo", "wp-module-ecommerce")} + +

+
+
+
    + { + solution.features.map((feat, index) => { + return( +
  • + + + {__(`${feat}`, "wp-module-ecommerce")} + +
  • + ) + }) + } +
+ +
+
+ ) + }) + }
) diff --git a/src/components/WPSolutionsBanner.js b/src/components/WPSolutionsBanner.js index 4f55e9b5..49ed14f7 100644 --- a/src/components/WPSolutionsBanner.js +++ b/src/components/WPSolutionsBanner.js @@ -9,6 +9,9 @@ import { ReactComponent as RightArrow } from "../icons/right-arrow.svg"; import { NoExistingPlan } from "./NoExistingPlan"; import { Section } from "./Section"; +//TODO: To removed once actual API response is available. +import { solutionsMockAPIResponse } from "../constants"; + export function WPSolutionsBanner() { /** @@ -22,7 +25,7 @@ export function WPSolutionsBanner() { const [ error, setError ] = useState(null); const [ mySolution, setMySolution ] = useState(null); const [ isLoaded, setIsLoaded ] = useState( false ); - const [ purchasedSolution, setPurchasedSolution] = useState("Creator") + const [ purchasedSolution, setPurchasedSolution] = useState(null) const [ availableSolutions, setAvailableSolutions] = useState([]); const [solutionsCards, setSolutionsCards] = useState([{}]); let currentSolution = []; @@ -36,12 +39,18 @@ export function WPSolutionsBanner() { useEffect( () => { apiFetch( { path: `${ entitlementsEndPoint }` } ).then( ( result ) => { - setIsLoaded( true ); - setMySolution( result ); + setIsLoaded(true); + setMySolution(result); + setPurchasedSolution(mySolution.solution) + if (purchasedSolution === null) { + //TODO: Once actual API response is available, remove line nos. 47 & uncomment line nos. 48 + setAvailableSolutions(solutionsMockAPIResponse?.solutions) + //setAvailableSolutions(mysolutions.solutions) + } }, ( error ) => { - setIsLoaded( true ); - setError( error ); + setIsLoaded(true); + setError(error); } ); }, [] ); @@ -53,7 +62,7 @@ export function WPSolutionsBanner() { {__("Oops! something went wrong. Please try again later", "wp-module-ecommerce")}
- ); + ); } else if (!isLoaded){ return (
@@ -61,9 +70,7 @@ export function WPSolutionsBanner() {
); } else if (mySolution) { - setPurchasedSolution(mySolution.solution) if (purchasedSolution === null) { - setAvailableSolutions(mySolution.solutions) return (); } else{ @@ -74,11 +81,7 @@ export function WPSolutionsBanner() { purchasedSolution === "Commerce" ? wpSolutionsPluginsList[0]['Commerce'] : wpSolutionsPluginsList[0]['none']; - //console.log(Object.values(currentSolution), "currentSolution"); - let tempSolutionsCards = Object.values(currentSolution); - //console.log(tempSolutionsCards, "tempSolutionsCards"); - setSolutionsCards(tempSolutionsCards); return( diff --git a/src/constants.js b/src/constants.js index 5f849349..41183869 100644 --- a/src/constants.js +++ b/src/constants.js @@ -159,7 +159,7 @@ export const wpSolutionsPluginsList = [ ] -const solutionsMockAPIResponse = { +export const solutionsMockAPIResponse = { "solution": null, "entitlements": [], "categories": [], @@ -167,32 +167,32 @@ const solutionsMockAPIResponse = { { "name": "Commerce", "sku": "SOLUTIONS_COMMERCE", - "description": "Incidunt deleniti veritatis consectetur odio beatae dolores voluptatem. Temporibus eaque sunt aut consequuntur. Aut magni voluptatem minus temporibus distinctio et voluptatem.", - "price": "22.92", - "fullPrice": "35.08", + "description": "Promote, sell, and grow your online store with powerful eCommerce tools.", + "price": "$22.92", + "fullPrice": "$35.08", "url": "http://www.schumm.info/quaerat-asperiores-velit-consequuntur-iure-sequi-aut-deleniti", "ctbId": null, - "features": null + "features": ["Monetize Content with Ease", "4 Exclusive Social Media Plugins", "6 Exclusive Marketing Plugins", "Secure Payment Gateway Included"] }, { "name": "Agency", "sku": "SOLUTIONS_SERVICE", - "description": "Qui saepe et sunt dignissimos autem nam. Quo occaecati ea iste ducimus. Hic mollitia sequi rerum eum error. Quo at sed suscipit tempore qui sequi.", - "price": "24.09", - "fullPrice": "33.30", + "description": "Boost local visibility and streamline your business operations with specialized tools.", + "price": "$24.09", + "fullPrice": "$33.30", "url": "http://boyer.com/odit-nobis-ut-est", "ctbId": null, - "features": null + "features": ["Includes the Content Creator bundle", "8 Exclusive Local Business Plugins", "Integrated Invoicing", "Local Social Media and SEO Plugins"] }, { "name": "Creator", "sku": "SOLUTIONS_CONTENT", - "description": "Consequatur accusantium incidunt quod aut earum vero. Velit rerum sit quibusdam eligendi esse placeat. Molestias aperiam doloremque quo id accusantium ut et sapiente. Ut neque fugiat dolores.", - "price": "27.29", - "fullPrice": "39.76", + "description": "Manage your site, build your brand, and monetize your content with essential tools.", + "price": "$27.29", + "fullPrice": "$39.76", "url": "https://www.hegmann.com/maxime-odit-blanditiis-cumque-qui", "ctbId": null, - "features": null + "features": ["Includes the Service Business bundle", "Express 1-Click Checkout", "24 Exclusive eCommerce Plugins", "Customizable Customer Account Creation"] } ] } \ No newline at end of file From e253bc4e5ac07434f633bd98e4b8cca5a051fcc0 Mon Sep 17 00:00:00 2001 From: aratidgr8 Date: Tue, 1 Oct 2024 19:44:39 +0530 Subject: [PATCH 12/68] Remove whitespace difference change from src/components/OnboardingScreen.js --- src/components/OnboardingScreen.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/components/OnboardingScreen.js b/src/components/OnboardingScreen.js index af3b0206..58c86547 100644 --- a/src/components/OnboardingScreen.js +++ b/src/components/OnboardingScreen.js @@ -199,7 +199,7 @@ export function OnboardingScreen({ comingSoon={comingSoon} notify={notify} toggleComingSoon={toggleComingSoon} - /> + />
From 20836105b894decddec1ffdecebbc2df54fca739 Mon Sep 17 00:00:00 2001 From: aratidgr8 Date: Tue, 1 Oct 2024 19:48:45 +0530 Subject: [PATCH 13/68] Added TODO comment --- build/index.asset.php | 2 +- src/constants.js | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/build/index.asset.php b/build/index.asset.php index 16da3f47..23bae2b6 100644 --- a/build/index.asset.php +++ b/build/index.asset.php @@ -1 +1 @@ - array('lodash', 'moment', 'react', 'react-dom', 'wp-api-fetch', 'wp-data', 'wp-date', 'wp-dom-ready', 'wp-element', 'wp-i18n', 'wp-url'), 'version' => '935b824352e396ce170f'); + array('lodash', 'moment', 'react', 'react-dom', 'wp-api-fetch', 'wp-data', 'wp-date', 'wp-dom-ready', 'wp-element', 'wp-i18n', 'wp-url'), 'version' => 'f7d183680c34408b2cbb'); diff --git a/src/constants.js b/src/constants.js index 41183869..4cfa3249 100644 --- a/src/constants.js +++ b/src/constants.js @@ -158,7 +158,7 @@ export const wpSolutionsPluginsList = [ } ] - +//TODO: Will be removed once actual API response is available for testing. export const solutionsMockAPIResponse = { "solution": null, "entitlements": [], From f1ff71ab1d014319249dff36170dadb2b6a13e48 Mon Sep 17 00:00:00 2001 From: aratidgr8 Date: Tue, 1 Oct 2024 21:35:55 +0530 Subject: [PATCH 14/68] Correct error text color --- build/index.asset.php | 2 +- src/components/WPSolutionsBanner.js | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/build/index.asset.php b/build/index.asset.php index 23bae2b6..41c9464d 100644 --- a/build/index.asset.php +++ b/build/index.asset.php @@ -1 +1 @@ - array('lodash', 'moment', 'react', 'react-dom', 'wp-api-fetch', 'wp-data', 'wp-date', 'wp-dom-ready', 'wp-element', 'wp-i18n', 'wp-url'), 'version' => 'f7d183680c34408b2cbb'); + array('lodash', 'moment', 'react', 'react-dom', 'wp-api-fetch', 'wp-data', 'wp-date', 'wp-dom-ready', 'wp-element', 'wp-i18n', 'wp-url'), 'version' => '176feef45a3298c68718'); diff --git a/src/components/WPSolutionsBanner.js b/src/components/WPSolutionsBanner.js index 49ed14f7..5f2ee9a5 100644 --- a/src/components/WPSolutionsBanner.js +++ b/src/components/WPSolutionsBanner.js @@ -58,7 +58,7 @@ export function WPSolutionsBanner() { if ( error ) { console.log(error.message, "error"); return ( -
+
{__("Oops! something went wrong. Please try again later", "wp-module-ecommerce")}
From 6d279d4b5454b37f404bcd2f55163fd01e0bdba4 Mon Sep 17 00:00:00 2001 From: aratidgr8 Date: Fri, 4 Oct 2024 16:51:01 +0530 Subject: [PATCH 15/68] Code updated as per Solutions Entitlement API --- build/index.asset.php | 2 +- src/components/NoExistingPlan.js | 6 +-- src/components/WPSolutionsBanner.js | 65 +++++++++++------------------ src/constants.js | 49 +++------------------- 4 files changed, 34 insertions(+), 88 deletions(-) diff --git a/build/index.asset.php b/build/index.asset.php index 41c9464d..ff375a11 100644 --- a/build/index.asset.php +++ b/build/index.asset.php @@ -1 +1 @@ - array('lodash', 'moment', 'react', 'react-dom', 'wp-api-fetch', 'wp-data', 'wp-date', 'wp-dom-ready', 'wp-element', 'wp-i18n', 'wp-url'), 'version' => '176feef45a3298c68718'); + array('lodash', 'moment', 'react', 'react-dom', 'wp-api-fetch', 'wp-data', 'wp-date', 'wp-dom-ready', 'wp-element', 'wp-i18n', 'wp-url'), 'version' => 'edff17d370a85e03db63'); diff --git a/src/components/NoExistingPlan.js b/src/components/NoExistingPlan.js index a15bf48c..d087e3f2 100644 --- a/src/components/NoExistingPlan.js +++ b/src/components/NoExistingPlan.js @@ -7,7 +7,7 @@ import { ReactComponent as FiftyOff } from "../icons/fifty-off.svg"; export function NoExistingPlan(props){ - const { available } = props; + const { availableSolutions } = props; return( { - available?.map((solution) => { + availableSolutions?.map((solution) => { return(
@@ -43,7 +43,7 @@ export function NoExistingPlan(props){
    { - solution.features.map((feat, index) => { + solution?.features.map((feat, index) => { return(
  • { - apiFetch( { path: `${ entitlementsEndPoint }` } ).then( + apiFetch( { url: `${ entitlementsEndPoint }` } ).then( ( result ) => { - setIsLoaded(true); - setMySolution(result); - setPurchasedSolution(mySolution.solution) - if (purchasedSolution === null) { - //TODO: Once actual API response is available, remove line nos. 47 & uncomment line nos. 48 - setAvailableSolutions(solutionsMockAPIResponse?.solutions) - //setAvailableSolutions(mysolutions.solutions) - } + setIsLoaded(true); + setApiResponse(result) + //setPurchasedSolution(result['solution']) + setAvailableSolutions(result['solutions']) }, ( error ) => { setIsLoaded(true); @@ -54,7 +39,7 @@ export function WPSolutionsBanner() { } ); }, [] ); - + if ( error ) { console.log(error.message, "error"); return ( @@ -63,26 +48,26 @@ export function WPSolutionsBanner() { {__("Oops! something went wrong. Please try again later", "wp-module-ecommerce")}
); - } else if (!isLoaded){ + } + else if (!isLoaded){ return (
); - } else if (mySolution) { + } + else if (apiResponse) { if (purchasedSolution === null) { return (); - } + } else{ - currentSolution = purchasedSolution === "Creator" ? - wpSolutionsPluginsList[0]['Creator'] : - purchasedSolution === "Agency" ? - wpSolutionsPluginsList[0]['Agency'] : - purchasedSolution === "Commerce" ? - wpSolutionsPluginsList[0]['Commerce'] : wpSolutionsPluginsList[0]['none']; - - let tempSolutionsCards = Object.values(currentSolution); - setSolutionsCards(tempSolutionsCards); + currentSolution = purchasedSolution === "WP_SOLUTION_CREATOR" ? + wpSolutionsPromotedPluginsList[0]['WP_SOLUTION_CREATOR'] : + purchasedSolution === "WP_SOLUTION_SERVICE" ? + wpSolutionsPromotedPluginsList[0]['WP_SOLUTION_SERVICE'] : + purchasedSolution === "WP_SOLUTION_COMMERCE" ? + wpSolutionsPromotedPluginsList[0]['WP_SOLUTION_COMMERCE'] : wpSolutionsPromotedPluginsList[0]['none']; + let solutionsCards = Object.values(currentSolution); return(
{ - solutionsCards.map((details, index) => { + solutionsCards?.map((details, index) => { return (

{ __(`${details['title']}`,"wp-module-ecommerce") } @@ -114,8 +99,8 @@ export function WPSolutionsBanner() { - ) - } - + ) + } + } } \ No newline at end of file diff --git a/src/constants.js b/src/constants.js index 4cfa3249..0dea6aac 100644 --- a/src/constants.js +++ b/src/constants.js @@ -46,9 +46,9 @@ export const wonderCartPopularCampaignsList = [ ]; -export const wpSolutionsPluginsList = [ +export const wpSolutionsPromotedPluginsList = [ { - "Creator": [ + "WP_SOLUTION_CREATOR": [ { title: "WEBPAGE CREATION", description: "Build webpages fast with tailored block patterns and page templates included in your hosting package.", @@ -74,7 +74,7 @@ export const wpSolutionsPluginsList = [ href: "" } ], - "Agency": [ + "WP_SOLUTION_SERVICE": [ { title: "SETUP BOOKINGS", description: "Manage the renting or booking of services and items that you offer your customers.", @@ -101,7 +101,7 @@ export const wpSolutionsPluginsList = [ }, ], - "Commerce": [ + "WP_SOLUTION_COMMERCE": [ { title: "SETUP WISHLISTS", description: "Let customers add products to lists and share them with family and friends.", @@ -156,43 +156,4 @@ export const wpSolutionsPluginsList = [ ], } -] - -//TODO: Will be removed once actual API response is available for testing. -export const solutionsMockAPIResponse = { - "solution": null, - "entitlements": [], - "categories": [], - "solutions": [ - { - "name": "Commerce", - "sku": "SOLUTIONS_COMMERCE", - "description": "Promote, sell, and grow your online store with powerful eCommerce tools.", - "price": "$22.92", - "fullPrice": "$35.08", - "url": "http://www.schumm.info/quaerat-asperiores-velit-consequuntur-iure-sequi-aut-deleniti", - "ctbId": null, - "features": ["Monetize Content with Ease", "4 Exclusive Social Media Plugins", "6 Exclusive Marketing Plugins", "Secure Payment Gateway Included"] - }, - { - "name": "Agency", - "sku": "SOLUTIONS_SERVICE", - "description": "Boost local visibility and streamline your business operations with specialized tools.", - "price": "$24.09", - "fullPrice": "$33.30", - "url": "http://boyer.com/odit-nobis-ut-est", - "ctbId": null, - "features": ["Includes the Content Creator bundle", "8 Exclusive Local Business Plugins", "Integrated Invoicing", "Local Social Media and SEO Plugins"] - }, - { - "name": "Creator", - "sku": "SOLUTIONS_CONTENT", - "description": "Manage your site, build your brand, and monetize your content with essential tools.", - "price": "$27.29", - "fullPrice": "$39.76", - "url": "https://www.hegmann.com/maxime-odit-blanditiis-cumque-qui", - "ctbId": null, - "features": ["Includes the Service Business bundle", "Express 1-Click Checkout", "24 Exclusive eCommerce Plugins", "Customizable Customer Account Creation"] - } - ] -} \ No newline at end of file +] \ No newline at end of file From 316fbae2f78128b8cf5e668fc68dd3abb2bf3e48 Mon Sep 17 00:00:00 2001 From: aratidgr8 Date: Fri, 4 Oct 2024 16:54:20 +0530 Subject: [PATCH 16/68] Remove commented code --- build/index.asset.php | 2 +- src/components/WPSolutionsBanner.js | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/build/index.asset.php b/build/index.asset.php index ff375a11..df7b890c 100644 --- a/build/index.asset.php +++ b/build/index.asset.php @@ -1 +1 @@ - array('lodash', 'moment', 'react', 'react-dom', 'wp-api-fetch', 'wp-data', 'wp-date', 'wp-dom-ready', 'wp-element', 'wp-i18n', 'wp-url'), 'version' => 'edff17d370a85e03db63'); + array('lodash', 'moment', 'react', 'react-dom', 'wp-api-fetch', 'wp-data', 'wp-date', 'wp-dom-ready', 'wp-element', 'wp-i18n', 'wp-url'), 'version' => '5a05f9ebb56b80c3f1b5'); diff --git a/src/components/WPSolutionsBanner.js b/src/components/WPSolutionsBanner.js index 88600d6e..e329ed36 100644 --- a/src/components/WPSolutionsBanner.js +++ b/src/components/WPSolutionsBanner.js @@ -30,7 +30,7 @@ export function WPSolutionsBanner() { ( result ) => { setIsLoaded(true); setApiResponse(result) - //setPurchasedSolution(result['solution']) + setPurchasedSolution(result['solution']) setAvailableSolutions(result['solutions']) }, ( error ) => { From 4903755b060aef57725cb645811cd8f115f52c7f Mon Sep 17 00:00:00 2001 From: aratidgr8 Date: Fri, 4 Oct 2024 17:09:43 +0530 Subject: [PATCH 17/68] Add HTML tags handling for No existing plans features section --- build/index.asset.php | 2 +- src/components/NoExistingPlan.js | 12 +++++++++++- src/components/WPSolutionsBanner.js | 2 +- 3 files changed, 13 insertions(+), 3 deletions(-) diff --git a/build/index.asset.php b/build/index.asset.php index df7b890c..6e245d31 100644 --- a/build/index.asset.php +++ b/build/index.asset.php @@ -1 +1 @@ - array('lodash', 'moment', 'react', 'react-dom', 'wp-api-fetch', 'wp-data', 'wp-date', 'wp-dom-ready', 'wp-element', 'wp-i18n', 'wp-url'), 'version' => '5a05f9ebb56b80c3f1b5'); + array('lodash', 'moment', 'react', 'react-dom', 'wp-api-fetch', 'wp-data', 'wp-date', 'wp-dom-ready', 'wp-element', 'wp-i18n', 'wp-url'), 'version' => '4c8a8f241ad90166378c'); diff --git a/src/components/NoExistingPlan.js b/src/components/NoExistingPlan.js index d087e3f2..0acf4c7a 100644 --- a/src/components/NoExistingPlan.js +++ b/src/components/NoExistingPlan.js @@ -8,6 +8,16 @@ import { ReactComponent as FiftyOff } from "../icons/fifty-off.svg"; export function NoExistingPlan(props){ const { availableSolutions } = props; + + const HtmlContent = ({ htmlString }) => { + return ( +
+ ); + }; + + return( - {__(`${feat}`, "wp-module-ecommerce")} + ) diff --git a/src/components/WPSolutionsBanner.js b/src/components/WPSolutionsBanner.js index e329ed36..88600d6e 100644 --- a/src/components/WPSolutionsBanner.js +++ b/src/components/WPSolutionsBanner.js @@ -30,7 +30,7 @@ export function WPSolutionsBanner() { ( result ) => { setIsLoaded(true); setApiResponse(result) - setPurchasedSolution(result['solution']) + //setPurchasedSolution(result['solution']) setAvailableSolutions(result['solutions']) }, ( error ) => { From 13fbb5a60d8d2a6f502926e0d18ce057c15d3d2b Mon Sep 17 00:00:00 2001 From: aratidgr8 Date: Fri, 4 Oct 2024 17:12:04 +0530 Subject: [PATCH 18/68] Remove commented code --- build/index.asset.php | 2 +- src/components/WPSolutionsBanner.js | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/build/index.asset.php b/build/index.asset.php index 6e245d31..7858137a 100644 --- a/build/index.asset.php +++ b/build/index.asset.php @@ -1 +1 @@ - array('lodash', 'moment', 'react', 'react-dom', 'wp-api-fetch', 'wp-data', 'wp-date', 'wp-dom-ready', 'wp-element', 'wp-i18n', 'wp-url'), 'version' => '4c8a8f241ad90166378c'); + array('lodash', 'moment', 'react', 'react-dom', 'wp-api-fetch', 'wp-data', 'wp-date', 'wp-dom-ready', 'wp-element', 'wp-i18n', 'wp-url'), 'version' => '85c8530ae08abcab339a'); diff --git a/src/components/WPSolutionsBanner.js b/src/components/WPSolutionsBanner.js index 88600d6e..e329ed36 100644 --- a/src/components/WPSolutionsBanner.js +++ b/src/components/WPSolutionsBanner.js @@ -30,7 +30,7 @@ export function WPSolutionsBanner() { ( result ) => { setIsLoaded(true); setApiResponse(result) - //setPurchasedSolution(result['solution']) + setPurchasedSolution(result['solution']) setAvailableSolutions(result['solutions']) }, ( error ) => { From abc71ee85ad4b15ebed9bc7fd307030683713d43 Mon Sep 17 00:00:00 2001 From: aratidgr8 Date: Fri, 4 Oct 2024 18:57:30 +0530 Subject: [PATCH 19/68] Organize Imports --- build/index.asset.php | 2 +- src/components/NoExistingPlan.js | 5 ++--- src/components/WPSolutionsBanner.js | 2 +- 3 files changed, 4 insertions(+), 5 deletions(-) diff --git a/build/index.asset.php b/build/index.asset.php index 7858137a..5a9c604b 100644 --- a/build/index.asset.php +++ b/build/index.asset.php @@ -1 +1 @@ - array('lodash', 'moment', 'react', 'react-dom', 'wp-api-fetch', 'wp-data', 'wp-date', 'wp-dom-ready', 'wp-element', 'wp-i18n', 'wp-url'), 'version' => '85c8530ae08abcab339a'); + array('lodash', 'moment', 'react', 'react-dom', 'wp-api-fetch', 'wp-data', 'wp-date', 'wp-dom-ready', 'wp-element', 'wp-i18n', 'wp-url'), 'version' => '199db1b68b2632ad373f'); diff --git a/src/components/NoExistingPlan.js b/src/components/NoExistingPlan.js index 0acf4c7a..43d6d163 100644 --- a/src/components/NoExistingPlan.js +++ b/src/components/NoExistingPlan.js @@ -1,9 +1,8 @@ import { Button } from "@newfold/ui-component-library"; -import { useEffect, useState } from "@wordpress/element"; import { __ } from "@wordpress/i18n"; -import { Section } from "./Section"; -import { ReactComponent as GreenTick } from "../icons/green-tick.svg"; import { ReactComponent as FiftyOff } from "../icons/fifty-off.svg"; +import { ReactComponent as GreenTick } from "../icons/green-tick.svg"; +import { Section } from "./Section"; export function NoExistingPlan(props){ diff --git a/src/components/WPSolutionsBanner.js b/src/components/WPSolutionsBanner.js index e329ed36..31a07557 100644 --- a/src/components/WPSolutionsBanner.js +++ b/src/components/WPSolutionsBanner.js @@ -1,11 +1,11 @@ import { ExclamationTriangleIcon } from "@heroicons/react/24/outline"; -import { NewfoldRuntime } from "../sdk/NewfoldRuntime"; import { Button, Spinner } from "@newfold/ui-component-library"; import apiFetch from '@wordpress/api-fetch'; import { useEffect, useState } from "@wordpress/element"; import { __ } from "@wordpress/i18n"; import { wpSolutionsPromotedPluginsList } from "../constants"; import { ReactComponent as RightArrow } from "../icons/right-arrow.svg"; +import { NewfoldRuntime } from "../sdk/NewfoldRuntime"; import { NoExistingPlan } from "./NoExistingPlan"; import { Section } from "./Section"; From 8e13162f3e2a38c05492cbaec4188d6788dd7d22 Mon Sep 17 00:00:00 2001 From: aratidgr8 Date: Tue, 8 Oct 2024 15:12:33 +0530 Subject: [PATCH 20/68] Code review comments resolved --- build/index.asset.php | 2 +- package.json | 6 +++--- src/components/WPSolutionsBanner.js | 9 ++++----- src/components/YITHPlugins.js | 16 ++++++++-------- src/configs/OnboardingList.config.js | 6 +++--- src/constants.js | 4 +++- 6 files changed, 22 insertions(+), 21 deletions(-) diff --git a/build/index.asset.php b/build/index.asset.php index 5a9c604b..2603b208 100644 --- a/build/index.asset.php +++ b/build/index.asset.php @@ -1 +1 @@ - array('lodash', 'moment', 'react', 'react-dom', 'wp-api-fetch', 'wp-data', 'wp-date', 'wp-dom-ready', 'wp-element', 'wp-i18n', 'wp-url'), 'version' => '199db1b68b2632ad373f'); + array('lodash', 'moment', 'react', 'react-dom', 'wp-api-fetch', 'wp-data', 'wp-date', 'wp-dom-ready', 'wp-element', 'wp-i18n', 'wp-url'), 'version' => '380470177a280db4b89b'); diff --git a/package.json b/package.json index 5eb568d1..51cfee9a 100644 --- a/package.json +++ b/package.json @@ -20,7 +20,6 @@ }, "dependencies": { "@faizaanceg/pandora": "^1.1.1", - "uuid": "^9.0.1", "@heroicons/react": "2.1.3", "@newfold-labs/js-utility-ui-analytics": "^1.2.0", "@newfold-labs/wp-module-runtime": "^1.0.0", @@ -32,8 +31,9 @@ "@wordpress/element": "^5.32.0", "@wordpress/i18n": "^4.55.0", "classnames": "2.5.1", - "moment": "^2.29.4", - "swr": "2.1.5" + "moment": "^2.29.4", + "swr": "2.1.5", + "uuid": "^9.0.1" }, "devDependencies": { "@tailwindcss/forms": "^0.5.7", diff --git a/src/components/WPSolutionsBanner.js b/src/components/WPSolutionsBanner.js index 31a07557..392e6037 100644 --- a/src/components/WPSolutionsBanner.js +++ b/src/components/WPSolutionsBanner.js @@ -3,7 +3,7 @@ import { Button, Spinner } from "@newfold/ui-component-library"; import apiFetch from '@wordpress/api-fetch'; import { useEffect, useState } from "@wordpress/element"; import { __ } from "@wordpress/i18n"; -import { wpSolutionsPromotedPluginsList } from "../constants"; +import { myPluginsAndToolsPageLink, wpSolutionsPromotedPluginsList } from "../constants"; import { ReactComponent as RightArrow } from "../icons/right-arrow.svg"; import { NewfoldRuntime } from "../sdk/NewfoldRuntime"; import { NoExistingPlan } from "./NoExistingPlan"; @@ -18,9 +18,7 @@ export function WPSolutionsBanner() { const [ purchasedSolution, setPurchasedSolution] = useState(null) const [ availableSolutions, setAvailableSolutions] = useState([]); let currentSolution = []; - - - const myPluginsAndToolsPageLink = `${window.location.href.split('#')[0]}#/my_plugins_and_tools`; + const routeChange = () =>{ location.href = myPluginsAndToolsPageLink; } @@ -41,7 +39,7 @@ export function WPSolutionsBanner() { }, [] ); if ( error ) { - console.log(error.message, "error"); + //console.log(error.message, "error"); return (
@@ -86,6 +84,7 @@ export function WPSolutionsBanner() {

{ __(`${details['description']}`,"wp-module-ecommerce") }

+ {/* TODO: Waiting for confirmation on https://jira.newfold.com/browse/PRESS0-2259 */} diff --git a/src/components/YITHPlugins.js b/src/components/YITHPlugins.js index 06ccff9a..86d95f33 100644 --- a/src/components/YITHPlugins.js +++ b/src/components/YITHPlugins.js @@ -129,7 +129,7 @@ export function YITHPlugins({ wpModules }) { "wp-module-ecommerce" )}
diff --git a/src/constants.js b/src/constants.js index c90c00b9..365646b1 100644 --- a/src/constants.js +++ b/src/constants.js @@ -127,35 +127,14 @@ export const wpSolutionsPromotedPluginsList = [ href: "" }, - ], - "none": [ - { - title: "SETUP WISHLISTS", - description: "Let customers add products to lists and share them with family and friends.", - buttonText: "Setup Wishilsts", - href: "" - }, - { - title: "ENABLE PRODUCT REVIEWS", - description: "Get positive product reviews and use social proof to drive more sales.", - buttonText: "Enable Product Reviews", - href: "" - }, - { - title: "CREATE A SALES CAMPAIGN", - description: "Create custom upsell, cross-sell and other promotional campaigns to generate more sales.", - buttonText: "Create a Campaign", - href: "" - }, - { - title: "SEARCH ENGINE OPTIMIZATION", - description: "Start increasing your search result rankings today.", - buttonText: "Improve Your Search Ranking", - href: "" - }, - ], - + ], } ] -export const myPluginsAndToolsPageLink = `${window.location.href.split('#')[0]}#/my_plugins_and_tools`; \ No newline at end of file +export const myPluginsAndToolsPageLink = `${window.location.href.split('#')[0]}#/my_plugins_and_tools`; + +export const solutionButtonTextObject = { + "WP_SOLUTION_COMMERCE" : "Commerce", + "WP_SOLUTION_SERVICE": "Service Business", + "WP_SOLUTION_CREATOR": "Content Creator" +} \ No newline at end of file From bcde2476979e845af519ec32e8d0403d42f63980 Mon Sep 17 00:00:00 2001 From: aratidgr8 Date: Wed, 9 Oct 2024 15:44:25 +0530 Subject: [PATCH 22/68] Plugin install & activate logic added in Homepage Banner --- build/index.asset.php | 2 +- includes/Data/Plugins.php | 19 ++++++++- src/components/WPSolutionsBanner.js | 60 +++++++++++++++++++++++++---- src/constants.js | 38 +++++++++++------- 4 files changed, 96 insertions(+), 23 deletions(-) diff --git a/build/index.asset.php b/build/index.asset.php index ce3549b9..0b308b50 100644 --- a/build/index.asset.php +++ b/build/index.asset.php @@ -1 +1 @@ - array('lodash', 'moment', 'react', 'react-dom', 'wp-api-fetch', 'wp-data', 'wp-date', 'wp-dom-ready', 'wp-element', 'wp-i18n', 'wp-url'), 'version' => '6bd06b066c365e7d307c'); + array('lodash', 'moment', 'react', 'react-dom', 'wp-api-fetch', 'wp-data', 'wp-date', 'wp-dom-ready', 'wp-element', 'wp-i18n', 'wp-url'), 'version' => 'fe7f305cf40f378a2794'); diff --git a/includes/Data/Plugins.php b/includes/Data/Plugins.php index 9346c406..58212e19 100644 --- a/includes/Data/Plugins.php +++ b/includes/Data/Plugins.php @@ -42,6 +42,23 @@ final class Plugins { ), ); + /** + * An associative array of premium plugins with their corresponding admin page URLs and file paths. + * + * @var array> $free_plugins + */ + public static $premium_plugins = array( + // TODO: More plugins to be added here as once their data is available + 'wp-seo' => array( + 'url' => 'wp-admin/admin.php?page=wpseo_dashboard#top#first-time-configuration', + 'file' => 'wordpress-seo/wp-seo.php' + ), + 'sensei-lms' => array( + 'url' => 'wp-admin/admin.php?page=wpseo_dashboard#top#first-time-configuration', + 'file' => 'sensei-lms/sensei-lms.php' + ), + ); + /** * An associative array of supported plugins with their corresponding file paths and admin page URLs. * @@ -120,6 +137,6 @@ final class Plugins { * @return array> A combined array of supported and free plugins. */ public static function supported_plugins() { - return array_merge( self::$supported_plugins, self::$free_plugins ); + return array_merge( self::$supported_plugins, self::$free_plugins, self::$premium_plugins ); } } diff --git a/src/components/WPSolutionsBanner.js b/src/components/WPSolutionsBanner.js index 177fa61b..fca2066f 100644 --- a/src/components/WPSolutionsBanner.js +++ b/src/components/WPSolutionsBanner.js @@ -3,12 +3,15 @@ import { Button, Spinner } from "@newfold/ui-component-library"; import apiFetch from '@wordpress/api-fetch'; import { useEffect, useState } from "@wordpress/element"; import { __ } from "@wordpress/i18n"; +import useSWR from "swr"; import { myPluginsAndToolsPageLink, solutionButtonTextObject, wpSolutionsPromotedPluginsList } from "../constants"; import { ReactComponent as RightArrow } from "../icons/right-arrow.svg"; import { NewfoldRuntime } from "../sdk/NewfoldRuntime"; +import { PluginsSdk } from "../sdk/plugins"; import { NoExistingPlan } from "./NoExistingPlan"; import { Section } from "./Section"; + export function WPSolutionsBanner() { const entitlementsEndPoint = NewfoldRuntime.createApiUrl("/newfold-solutions/v1/entitlements"); @@ -17,8 +20,20 @@ export function WPSolutionsBanner() { const [ isLoaded, setIsLoaded ] = useState( false ); const [ purchasedSolution, setPurchasedSolution] = useState(null) const [ availableSolutions, setAvailableSolutions] = useState([]); - const [ buttonTxtSolutionName, setButtonTxtSolutionName] = useState(null); + const [ pluginActiveStatusArray, setPluginActiveStatusArray] = useState([]); let currentSolution = []; + + //TODO: To add slug information for all premium plugins once data is available + let premiumPluginStatus = useSWR( + "nfd_slug_wonder_cart", + () => + PluginsSdk.queries + .status("nfd_slug_wonder_cart", "sensei-lms", "wp-seo") + .then(res => { + setPluginActiveStatusArray(res?.details) + }), + { refreshInterval: 30 * 1000 } + ); const routeChange = () =>{ location.href = myPluginsAndToolsPageLink; @@ -40,6 +55,7 @@ export function WPSolutionsBanner() { }, [] ); if ( error ) { + //Uncomment below line, to debug error in API response //console.log(error.message, "error"); return (
@@ -78,22 +94,50 @@ export function WPSolutionsBanner() {
{ solutionsCards?.map((details, index) => { - return (
+ return (

{ __(`${details['title']}`,"wp-module-ecommerce") }

{ __(`${details['description']}`,"wp-module-ecommerce") } -

- {/* TODO: Waiting for confirmation on https://jira.newfold.com/browse/PRESS0-2259 */} - +

+ { + details.slug !== "" ? + Object.entries(pluginActiveStatusArray).map(([slug, { status, url }]) => ( + details.slug === slug ? + status === "active" ? + + : + status === "need_to_install" || "installing" ? + : null + : + null + )) + : +
+ + + {__("Please try installing later", "wp-module-ecommerce")} + +
+ }
) }) }
+ diff --git a/src/constants.js b/src/constants.js index 365646b1..b8e782b3 100644 --- a/src/constants.js +++ b/src/constants.js @@ -45,7 +45,7 @@ export const wonderCartPopularCampaignsList = [ } ]; - +//TODO: To add slug & providerName information for all plugins once it is available export const wpSolutionsPromotedPluginsList = [ { "WP_SOLUTION_CREATOR": [ @@ -53,25 +53,29 @@ export const wpSolutionsPromotedPluginsList = [ title: "WEBPAGE CREATION", description: "Build webpages fast with tailored block patterns and page templates included in your hosting package.", buttonText: "Add a Page to Your Site", - href: "" + slug: "", + providerName: "" }, { title: "SEARCH ENGINE OPTIMIZATION", description: "Start increasing your search result rankings today.", buttonText: "Improve Your Search Ranking", - href: "" + slug: "wp-seo", + providerName: "" }, { title: "OFFER CONTENT COURSES", description: "Create beautiful and engaging online courses, lessons, and quizzes.", buttonText: "Create a Course", - href: "" + slug: "sensei-lms", + providerName: "" }, { title: "ADD AN AFFILIATE PROGRAM", description: "Grant your affiliates earnings each time someone purchases from their link.", buttonText: "Create an Affiliate Program", - href: "" + slug: "", + providerName: "" } ], "WP_SOLUTION_SERVICE": [ @@ -79,25 +83,29 @@ export const wpSolutionsPromotedPluginsList = [ title: "SETUP BOOKINGS", description: "Manage the renting or booking of services and items that you offer your customers.", buttonText: "Setup Bookings", - href: "" + slug: "", + providerName: "" }, { title: "WEBPAGE CREATION", description: "Build webpages fast with tailored block patterns and page templates.", buttonText: "Add a Page to Your Site", - href: "" + slug: "", + providerName: "" }, { title: "SEARCH ENGINE OPTIMIZATION", description: "Start increasing your search result rankings today.", buttonText: "Improve Your Search Ranking", - href: "" + slug: "wp-seo", + providerName: "" }, { title: "SETUP A LOYALTY PROGRAM", description: "Reward customer loyalty with an effective points program.", buttonText: "Configure Points & Rewards", - href: "" + slug: "", + providerName: "" }, ], @@ -106,25 +114,29 @@ export const wpSolutionsPromotedPluginsList = [ title: "SETUP WISHLISTS", description: "Let customers add products to lists and share them with family and friends.", buttonText: "Setup Wishilsts", - href: "" + slug: "", + providerName: "" }, { title: "ENABLE PRODUCT REVIEWS", description: "Get positive product reviews and use social proof to drive more sales.", buttonText: "Enable Product Reviews", - href: "" + slug: "", + providerName: "" }, { title: "CREATE A SALES CAMPAIGN", description: "Create custom upsell, cross-sell and other promotional campaigns to generate more sales.", buttonText: "Create a Campaign", - href: "" + slug: "nfd_slug_wonder_cart", + providerName: "" }, { title: "SEARCH ENGINE OPTIMIZATION", description: "Start increasing your search result rankings today.", buttonText: "Improve Your Search Ranking", - href: "" + slug: "wp-seo", + providerName: "" }, ], From d634220e61a2f9d52e42f0fbd82ae427c63afe44 Mon Sep 17 00:00:00 2001 From: aratidgr8 Date: Wed, 9 Oct 2024 16:47:27 +0530 Subject: [PATCH 23/68] PR comments --- build/index.asset.php | 2 +- src/components/WPSolutionsBanner.js | 17 +++++++---------- 2 files changed, 8 insertions(+), 11 deletions(-) diff --git a/build/index.asset.php b/build/index.asset.php index 0b308b50..ec2bd323 100644 --- a/build/index.asset.php +++ b/build/index.asset.php @@ -1 +1 @@ - array('lodash', 'moment', 'react', 'react-dom', 'wp-api-fetch', 'wp-data', 'wp-date', 'wp-dom-ready', 'wp-element', 'wp-i18n', 'wp-url'), 'version' => 'fe7f305cf40f378a2794'); + array('lodash', 'moment', 'react', 'react-dom', 'wp-api-fetch', 'wp-data', 'wp-date', 'wp-dom-ready', 'wp-element', 'wp-i18n', 'wp-url'), 'version' => '9c0b6e7c532590756eee'); diff --git a/src/components/WPSolutionsBanner.js b/src/components/WPSolutionsBanner.js index fca2066f..a15f5fda 100644 --- a/src/components/WPSolutionsBanner.js +++ b/src/components/WPSolutionsBanner.js @@ -79,9 +79,7 @@ export function WPSolutionsBanner() { currentSolution = purchasedSolution === "WP_SOLUTION_CREATOR" ? wpSolutionsPromotedPluginsList[0]['WP_SOLUTION_CREATOR'] : purchasedSolution === "WP_SOLUTION_SERVICE" ? - wpSolutionsPromotedPluginsList[0]['WP_SOLUTION_SERVICE'] : - purchasedSolution === "WP_SOLUTION_COMMERCE" ? - wpSolutionsPromotedPluginsList[0]['WP_SOLUTION_COMMERCE'] : wpSolutionsPromotedPluginsList[0]['none']; + wpSolutionsPromotedPluginsList[0]['WP_SOLUTION_SERVICE'] : wpSolutionsPromotedPluginsList[0]['WP_SOLUTION_COMMERCE']; let solutionsCards = Object.values(currentSolution); return( @@ -114,7 +112,8 @@ export function WPSolutionsBanner() { status === "need_to_install" || "installing" ?
+ }
) }) From 7edf62954843838a44d6d3500a43a0c8ce07c1e7 Mon Sep 17 00:00:00 2001 From: Evan Mullins Date: Wed, 9 Oct 2024 10:36:00 -0400 Subject: [PATCH 24/68] module version bump to 1.4.0-beta --- bootstrap.php | 2 +- package-lock.json | 689 ++++++++++++++++++++++++++++++---------------- package.json | 2 +- 3 files changed, 461 insertions(+), 232 deletions(-) diff --git a/bootstrap.php b/bootstrap.php index 1e449eb0..a762850e 100644 --- a/bootstrap.php +++ b/bootstrap.php @@ -5,7 +5,7 @@ use function NewfoldLabs\WP\ModuleLoader\register; -define( 'NFD_ECOMMERCE_MODULE_VERSION', '1.3.44' ); +define( 'NFD_ECOMMERCE_MODULE_VERSION', '1.4.0-beta' ); if ( function_exists( 'is_admin' ) && is_admin() ) { $old_woocommerce_module_version = get_option( 'nfd_ecommerce_module_version' ); diff --git a/package-lock.json b/package-lock.json index 11617df4..eb53cbe8 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "@newfold-labs/wp-module-ecommerce", - "version": "1.3.44", + "version": "1.4.0-beta", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "@newfold-labs/wp-module-ecommerce", - "version": "1.3.44", + "version": "1.4.0-beta", "license": "GPL-2.0-or-later", "dependencies": { "@faizaanceg/pandora": "^1.1.1", @@ -4163,26 +4163,10 @@ "@types/node": "*" } }, - "node_modules/@types/eslint": { - "version": "8.56.2", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/estree": "*", - "@types/json-schema": "*" - } - }, - "node_modules/@types/eslint-scope": { - "version": "3.7.7", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/eslint": "*", - "@types/estree": "*" - } - }, "node_modules/@types/estree": { - "version": "1.0.5", + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.6.tgz", + "integrity": "sha512-AYnb1nQyY49te+VRAVgmzfcgjYS91mY5P0TKUDCLEM+gNnA+3T6rWITXRLYCpahpqSQbN5cE+gHpnPyXjHWxcw==", "dev": true, "license": "MIT" }, @@ -4787,7 +4771,9 @@ } }, "node_modules/@webassemblyjs/ast": { - "version": "1.11.6", + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.12.1.tgz", + "integrity": "sha512-EKfMUOPRRUTy5UII4qJDGPpqfwjOmZ5jeGFwid9mnoqIFK+e0vqoi1qH56JpmZSzEL53jKnNzScdmftJyG5xWg==", "dev": true, "license": "MIT", "dependencies": { @@ -4797,21 +4783,29 @@ }, "node_modules/@webassemblyjs/floating-point-hex-parser": { "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.11.6.tgz", + "integrity": "sha512-ejAj9hfRJ2XMsNHk/v6Fu2dGS+i4UaXBXGemOfQ/JfQ6mdQg/WXtwleQRLLS4OvfDhv8rYnVwH27YJLMyYsxhw==", "dev": true, "license": "MIT" }, "node_modules/@webassemblyjs/helper-api-error": { "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.11.6.tgz", + "integrity": "sha512-o0YkoP4pVu4rN8aTJgAyj9hC2Sv5UlkzCHhxqWj8butaLvnpdc2jOwh4ewE6CX0txSfLn/UYaV/pheS2Txg//Q==", "dev": true, "license": "MIT" }, "node_modules/@webassemblyjs/helper-buffer": { - "version": "1.11.6", + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.12.1.tgz", + "integrity": "sha512-nzJwQw99DNDKr9BVCOZcLuJJUlqkJh+kVzVl6Fmq/tI5ZtEyWT1KZMyOXltXLZJmDtvLCDgwsyrkohEtopTXCw==", "dev": true, "license": "MIT" }, "node_modules/@webassemblyjs/helper-numbers": { "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-numbers/-/helper-numbers-1.11.6.tgz", + "integrity": "sha512-vUIhZ8LZoIWHBohiEObxVm6hwP034jwmc9kuq5GdHZH0wiLVLIPcMCdpJzG4C11cHoQ25TFIQj9kaVADVX7N3g==", "dev": true, "license": "MIT", "dependencies": { @@ -4822,22 +4816,28 @@ }, "node_modules/@webassemblyjs/helper-wasm-bytecode": { "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.11.6.tgz", + "integrity": "sha512-sFFHKwcmBprO9e7Icf0+gddyWYDViL8bpPjJJl0WHxCdETktXdmtWLGVzoHbqUcY4Be1LkNfwTmXOJUFZYSJdA==", "dev": true, "license": "MIT" }, "node_modules/@webassemblyjs/helper-wasm-section": { - "version": "1.11.6", + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.12.1.tgz", + "integrity": "sha512-Jif4vfB6FJlUlSbgEMHUyk1j234GTNG9dBJ4XJdOySoj518Xj0oGsNi59cUQF4RRMS9ouBUxDDdyBVfPTypa5g==", "dev": true, "license": "MIT", "dependencies": { - "@webassemblyjs/ast": "1.11.6", - "@webassemblyjs/helper-buffer": "1.11.6", + "@webassemblyjs/ast": "1.12.1", + "@webassemblyjs/helper-buffer": "1.12.1", "@webassemblyjs/helper-wasm-bytecode": "1.11.6", - "@webassemblyjs/wasm-gen": "1.11.6" + "@webassemblyjs/wasm-gen": "1.12.1" } }, "node_modules/@webassemblyjs/ieee754": { "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.11.6.tgz", + "integrity": "sha512-LM4p2csPNvbij6U1f19v6WR56QZ8JcHg3QIJTlSwzFcmx6WSORicYj6I63f9yU1kEUtrpG+kjkiIAkevHpDXrg==", "dev": true, "license": "MIT", "dependencies": { @@ -4846,6 +4846,8 @@ }, "node_modules/@webassemblyjs/leb128": { "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.11.6.tgz", + "integrity": "sha512-m7a0FhE67DQXgouf1tbN5XQcdWoNgaAuoULHIfGFIEVKA6tu/edls6XnIlkmS6FrXAquJRPni3ZZKjw6FSPjPQ==", "dev": true, "license": "Apache-2.0", "dependencies": { @@ -4854,30 +4856,36 @@ }, "node_modules/@webassemblyjs/utf8": { "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.11.6.tgz", + "integrity": "sha512-vtXf2wTQ3+up9Zsg8sa2yWiQpzSsMyXj0qViVP6xKGCUT8p8YJ6HqI7l5eCnWx1T/FYdsv07HQs2wTFbbof/RA==", "dev": true, "license": "MIT" }, "node_modules/@webassemblyjs/wasm-edit": { - "version": "1.11.6", + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.12.1.tgz", + "integrity": "sha512-1DuwbVvADvS5mGnXbE+c9NfA8QRcZ6iKquqjjmR10k6o+zzsRVesil54DKexiowcFCPdr/Q0qaMgB01+SQ1u6g==", "dev": true, "license": "MIT", "dependencies": { - "@webassemblyjs/ast": "1.11.6", - "@webassemblyjs/helper-buffer": "1.11.6", + "@webassemblyjs/ast": "1.12.1", + "@webassemblyjs/helper-buffer": "1.12.1", "@webassemblyjs/helper-wasm-bytecode": "1.11.6", - "@webassemblyjs/helper-wasm-section": "1.11.6", - "@webassemblyjs/wasm-gen": "1.11.6", - "@webassemblyjs/wasm-opt": "1.11.6", - "@webassemblyjs/wasm-parser": "1.11.6", - "@webassemblyjs/wast-printer": "1.11.6" + "@webassemblyjs/helper-wasm-section": "1.12.1", + "@webassemblyjs/wasm-gen": "1.12.1", + "@webassemblyjs/wasm-opt": "1.12.1", + "@webassemblyjs/wasm-parser": "1.12.1", + "@webassemblyjs/wast-printer": "1.12.1" } }, "node_modules/@webassemblyjs/wasm-gen": { - "version": "1.11.6", + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.12.1.tgz", + "integrity": "sha512-TDq4Ojh9fcohAw6OIMXqiIcTq5KUXTGRkVxbSo1hQnSy6lAM5GSdfwWeSxpAo0YzgsgF182E/U0mDNhuA0tW7w==", "dev": true, "license": "MIT", "dependencies": { - "@webassemblyjs/ast": "1.11.6", + "@webassemblyjs/ast": "1.12.1", "@webassemblyjs/helper-wasm-bytecode": "1.11.6", "@webassemblyjs/ieee754": "1.11.6", "@webassemblyjs/leb128": "1.11.6", @@ -4885,22 +4893,26 @@ } }, "node_modules/@webassemblyjs/wasm-opt": { - "version": "1.11.6", + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.12.1.tgz", + "integrity": "sha512-Jg99j/2gG2iaz3hijw857AVYekZe2SAskcqlWIZXjji5WStnOpVoat3gQfT/Q5tb2djnCjBtMocY/Su1GfxPBg==", "dev": true, "license": "MIT", "dependencies": { - "@webassemblyjs/ast": "1.11.6", - "@webassemblyjs/helper-buffer": "1.11.6", - "@webassemblyjs/wasm-gen": "1.11.6", - "@webassemblyjs/wasm-parser": "1.11.6" + "@webassemblyjs/ast": "1.12.1", + "@webassemblyjs/helper-buffer": "1.12.1", + "@webassemblyjs/wasm-gen": "1.12.1", + "@webassemblyjs/wasm-parser": "1.12.1" } }, "node_modules/@webassemblyjs/wasm-parser": { - "version": "1.11.6", + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.12.1.tgz", + "integrity": "sha512-xikIi7c2FHXysxXe3COrVUPSheuBtpcfhbpFj4gmu7KRLYOzANztwUU0IbsqvMqzuNK2+glRGWCEqZo1WCLyAQ==", "dev": true, "license": "MIT", "dependencies": { - "@webassemblyjs/ast": "1.11.6", + "@webassemblyjs/ast": "1.12.1", "@webassemblyjs/helper-api-error": "1.11.6", "@webassemblyjs/helper-wasm-bytecode": "1.11.6", "@webassemblyjs/ieee754": "1.11.6", @@ -4909,11 +4921,13 @@ } }, "node_modules/@webassemblyjs/wast-printer": { - "version": "1.11.6", + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.12.1.tgz", + "integrity": "sha512-+X4WAlOisVWQMikjbcvY2e0rwPsKQ9F688lksZhBcPycBBuii3O7m8FACbDMWDojpAqvjIncrG8J0XHKyQfVeA==", "dev": true, "license": "MIT", "dependencies": { - "@webassemblyjs/ast": "1.11.6", + "@webassemblyjs/ast": "1.12.1", "@xtuc/long": "4.2.2" } }, @@ -5117,9 +5131,10 @@ } }, "node_modules/@wordpress/components/node_modules/path-to-regexp": { - "version": "6.2.2", - "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-6.2.2.tgz", - "integrity": "sha512-GQX3SSMokngb36+whdpRXE+3f9V8UzyAorlYvOGx87ufGHehNTn5lCxrKtLyZ4Yl/wEKnNnr98ZzOwwDZV5ogw==" + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-6.3.0.tgz", + "integrity": "sha512-Yhpw4T9C6hPpgPeA28us07OJeqZ5EzQTkbfwuhsUg0c237RomFoETJgmp2sa3F/41gfLE6G5cqcYwznmeEeOlQ==", + "license": "MIT" }, "node_modules/@wordpress/components/node_modules/remove-accents": { "version": "0.5.0", @@ -5787,11 +5802,15 @@ }, "node_modules/@xtuc/ieee754": { "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz", + "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==", "dev": true, "license": "BSD-3-Clause" }, "node_modules/@xtuc/long": { "version": "4.2.2", + "resolved": "https://registry.npmjs.org/@xtuc/long/-/long-4.2.2.tgz", + "integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==", "dev": true, "license": "Apache-2.0" }, @@ -5832,8 +5851,10 @@ "acorn-walk": "^8.0.2" } }, - "node_modules/acorn-import-assertions": { - "version": "1.9.0", + "node_modules/acorn-import-attributes": { + "version": "1.9.5", + "resolved": "https://registry.npmjs.org/acorn-import-attributes/-/acorn-import-attributes-1.9.5.tgz", + "integrity": "sha512-n02Vykv5uA3eHGM/Z2dQrcD56kL8TyDb2p1+0P83PClMnC/nc+anbQRhIOWnSq4Ke/KvDPrY3C9hDtC/A3eHnQ==", "dev": true, "license": "MIT", "peerDependencies": { @@ -6418,10 +6439,11 @@ } }, "node_modules/axios": { - "version": "1.6.8", - "resolved": "https://registry.npmjs.org/axios/-/axios-1.6.8.tgz", - "integrity": "sha512-v/ZHtJDU39mDpyBoFVkETcd/uNdxrWRrg3bKpOKzXFA6Bvqopts6ALSMU3y6ijYxbw2B+wPrIv46egTzJXCLGQ==", + "version": "1.7.7", + "resolved": "https://registry.npmjs.org/axios/-/axios-1.7.7.tgz", + "integrity": "sha512-S4kL7XrjgBmvdGut0sN3yJxqYzrDOnivkBiN0OFs6hLiUam3UPvswUo0kqGyhqUZGEOytHyumEdXsAkgCOUf3Q==", "dev": true, + "license": "MIT", "dependencies": { "follow-redirects": "^1.15.6", "form-data": "^4.0.0", @@ -6749,10 +6771,11 @@ "license": "MIT" }, "node_modules/body-parser": { - "version": "1.20.2", - "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.2.tgz", - "integrity": "sha512-ml9pReCu3M61kGlqoTm2umSXTlRTuGTx0bfYj+uIUKKYycG5NtSbeetV3faSU6R7ajOPw0g/J1PvK4qNy7s5bA==", + "version": "1.20.3", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.3.tgz", + "integrity": "sha512-7rAxByjUMqQ3/bHJy7D6OGXvx/MMc4IqBn/X0fcM1QUcAItpZrBEYhWGem+tzXH90c+G01ypMcYJBO9Y30203g==", "dev": true, + "license": "MIT", "dependencies": { "bytes": "3.1.2", "content-type": "~1.0.5", @@ -6762,7 +6785,7 @@ "http-errors": "2.0.0", "iconv-lite": "0.4.24", "on-finished": "2.4.1", - "qs": "6.11.0", + "qs": "6.13.0", "raw-body": "2.5.2", "type-is": "~1.6.18", "unpipe": "1.0.0" @@ -6777,6 +6800,7 @@ "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", "dev": true, + "license": "MIT", "engines": { "node": ">= 0.8" } @@ -6786,6 +6810,7 @@ "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", "dev": true, + "license": "MIT", "dependencies": { "ms": "2.0.0" } @@ -6795,6 +6820,7 @@ "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", "dev": true, + "license": "MIT", "dependencies": { "safer-buffer": ">= 2.1.2 < 3" }, @@ -6806,15 +6832,17 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/body-parser/node_modules/qs": { - "version": "6.11.0", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.11.0.tgz", - "integrity": "sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q==", + "version": "6.13.0", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.13.0.tgz", + "integrity": "sha512-+38qI9SOr8tfZ4QmJNplMUxqjbe7LKvvZgWdExBOmd+egZTtjLB67Gu0HRX3u/XOq7UU2Nx6nsjvS16Z9uwfpg==", "dev": true, + "license": "BSD-3-Clause", "dependencies": { - "side-channel": "^1.0.4" + "side-channel": "^1.0.6" }, "engines": { "node": ">=0.6" @@ -6848,11 +6876,13 @@ } }, "node_modules/braces": { - "version": "3.0.2", + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz", + "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==", "dev": true, "license": "MIT", "dependencies": { - "fill-range": "^7.0.1" + "fill-range": "^7.1.1" }, "engines": { "node": ">=8" @@ -7721,6 +7751,7 @@ "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.5.tgz", "integrity": "sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==", "dev": true, + "license": "MIT", "engines": { "node": ">= 0.6" } @@ -7731,10 +7762,11 @@ "license": "MIT" }, "node_modules/cookie": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.6.0.tgz", - "integrity": "sha512-U71cyTamuh1CRNCfpGY6to28lxvNwPG4Guz/EVjgf3Jmzv0vlDp1atT9eS5dDjMYHucpHbWns6Lwf3BKz6svdw==", + "version": "0.7.1", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.7.1.tgz", + "integrity": "sha512-6DnInpx7SJ2AK3+CTUE/ZM0vWTUboZCegxhC2xiIydHR9jNuTAASBrfEpHhiGOZw/nX51bHt6YQl8jsGo4y/0w==", "dev": true, + "license": "MIT", "engines": { "node": ">= 0.6" } @@ -8901,6 +8933,8 @@ }, "node_modules/depd": { "version": "2.0.0", + "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", + "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==", "dev": true, "license": "MIT", "engines": { @@ -8918,6 +8952,8 @@ }, "node_modules/destroy": { "version": "1.2.0", + "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz", + "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==", "dev": true, "license": "MIT", "engines": { @@ -9159,6 +9195,8 @@ }, "node_modules/ee-first": { "version": "1.1.1", + "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", + "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==", "dev": true, "license": "MIT" }, @@ -9193,7 +9231,9 @@ } }, "node_modules/encodeurl": { - "version": "1.0.2", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-2.0.0.tgz", + "integrity": "sha512-Q0n9HRi4m6JuGIV1eFlmvJB7ZEVxu93IrMyiMsGC0lrMJMWzRgx6WGquyfQgZVb31vhGgXnfmPNNXmxnOkRBrg==", "dev": true, "license": "MIT", "engines": { @@ -9216,7 +9256,9 @@ } }, "node_modules/enhanced-resolve": { - "version": "5.15.0", + "version": "5.17.1", + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.17.1.tgz", + "integrity": "sha512-LMHl3dXhTcfv8gM4kEzIUeTQ+7fpdA0l2tUf34BddXPkz2A5xJ5L/Pchd5BL6rdccM9QGvu0sWZzK1Z1t4wwyg==", "dev": true, "license": "MIT", "dependencies": { @@ -10264,6 +10306,8 @@ }, "node_modules/etag": { "version": "1.8.1", + "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", + "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==", "dev": true, "license": "MIT", "engines": { @@ -10415,37 +10459,38 @@ "license": "MIT" }, "node_modules/express": { - "version": "4.19.2", - "resolved": "https://registry.npmjs.org/express/-/express-4.19.2.tgz", - "integrity": "sha512-5T6nhjsT+EOMzuck8JjBHARTHfMht0POzlA60WV2pMD3gyXw2LZnZ+ueGdNxG+0calOJcWKbpFcuzLZ91YWq9Q==", + "version": "4.21.1", + "resolved": "https://registry.npmjs.org/express/-/express-4.21.1.tgz", + "integrity": "sha512-YSFlK1Ee0/GC8QaO91tHcDxJiE/X4FbpAyQWkxAvG6AXCuR65YzK8ua6D9hvi/TzUfZMpc+BwuM1IPw8fmQBiQ==", "dev": true, + "license": "MIT", "dependencies": { "accepts": "~1.3.8", "array-flatten": "1.1.1", - "body-parser": "1.20.2", + "body-parser": "1.20.3", "content-disposition": "0.5.4", "content-type": "~1.0.4", - "cookie": "0.6.0", + "cookie": "0.7.1", "cookie-signature": "1.0.6", "debug": "2.6.9", "depd": "2.0.0", - "encodeurl": "~1.0.2", + "encodeurl": "~2.0.0", "escape-html": "~1.0.3", "etag": "~1.8.1", - "finalhandler": "1.2.0", + "finalhandler": "1.3.1", "fresh": "0.5.2", "http-errors": "2.0.0", - "merge-descriptors": "1.0.1", + "merge-descriptors": "1.0.3", "methods": "~1.1.2", "on-finished": "2.4.1", "parseurl": "~1.3.3", - "path-to-regexp": "0.1.7", + "path-to-regexp": "0.1.10", "proxy-addr": "~2.0.7", - "qs": "6.11.0", + "qs": "6.13.0", "range-parser": "~1.2.1", "safe-buffer": "5.2.1", - "send": "0.18.0", - "serve-static": "1.15.0", + "send": "0.19.0", + "serve-static": "1.16.2", "setprototypeof": "1.2.0", "statuses": "2.0.1", "type-is": "~1.6.18", @@ -10470,11 +10515,13 @@ "license": "MIT" }, "node_modules/express/node_modules/qs": { - "version": "6.11.0", + "version": "6.13.0", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.13.0.tgz", + "integrity": "sha512-+38qI9SOr8tfZ4QmJNplMUxqjbe7LKvvZgWdExBOmd+egZTtjLB67Gu0HRX3u/XOq7UU2Nx6nsjvS16Z9uwfpg==", "dev": true, "license": "BSD-3-Clause", "dependencies": { - "side-channel": "^1.0.4" + "side-channel": "^1.0.6" }, "engines": { "node": ">=0.6" @@ -10703,7 +10750,9 @@ } }, "node_modules/fill-range": { - "version": "7.0.1", + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz", + "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==", "dev": true, "license": "MIT", "dependencies": { @@ -10714,12 +10763,14 @@ } }, "node_modules/finalhandler": { - "version": "1.2.0", + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.3.1.tgz", + "integrity": "sha512-6BN9trH7bp3qvnrRyzsBz+g3lZxTNZTbVO2EV1CS0WIcDbawYVdYvGflME/9QP0h0pYlCDBCTjYa9nZzMDpyxQ==", "dev": true, "license": "MIT", "dependencies": { "debug": "2.6.9", - "encodeurl": "~1.0.2", + "encodeurl": "~2.0.0", "escape-html": "~1.0.3", "on-finished": "2.4.1", "parseurl": "~1.3.3", @@ -10732,6 +10783,8 @@ }, "node_modules/finalhandler/node_modules/debug": { "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", "dev": true, "license": "MIT", "dependencies": { @@ -10740,6 +10793,8 @@ }, "node_modules/finalhandler/node_modules/ms": { "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", "dev": true, "license": "MIT" }, @@ -11065,6 +11120,8 @@ }, "node_modules/fresh": { "version": "0.5.2", + "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", + "integrity": "sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==", "dev": true, "license": "MIT", "engines": { @@ -11335,6 +11392,8 @@ }, "node_modules/glob-to-regexp": { "version": "0.4.1", + "resolved": "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz", + "integrity": "sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==", "dev": true, "license": "BSD-2-Clause" }, @@ -11701,6 +11760,8 @@ }, "node_modules/http-errors": { "version": "2.0.0", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz", + "integrity": "sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==", "dev": true, "license": "MIT", "dependencies": { @@ -12381,6 +12442,8 @@ }, "node_modules/is-number": { "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", "dev": true, "license": "MIT", "engines": { @@ -14175,10 +14238,11 @@ } }, "node_modules/lighthouse/node_modules/ws": { - "version": "7.5.9", - "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.9.tgz", - "integrity": "sha512-F+P9Jil7UiSKSkppIiD94dN07AwvFixvLIj1Og1Rl9GGMuNipJnV9JzjD6XuqmAeiswGvUmNLjr5cFuXwNS77Q==", + "version": "7.5.10", + "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.10.tgz", + "integrity": "sha512-+dbF1tHwZpXcbOJdVOkzLDxZP1ailvSxM6ZweXTegylPny803bFhA+vqBYw4s31NSAk4S2Qz+AKXK9a4wkdjcQ==", "dev": true, + "license": "MIT", "engines": { "node": ">=8.3.0" }, @@ -14631,6 +14695,7 @@ "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", "integrity": "sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==", "dev": true, + "license": "MIT", "engines": { "node": ">= 0.6" } @@ -14757,9 +14822,14 @@ } }, "node_modules/merge-descriptors": { - "version": "1.0.1", + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.3.tgz", + "integrity": "sha512-gaNvAS7TZ897/rVaZ0nMtAyxNyi/pdbjbAwUpFQpN70GqnVfOiXpeUUMKRBmzXaSQ8DdTX4/0ms62r2K+hE6mQ==", "dev": true, - "license": "MIT" + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } }, "node_modules/merge-stream": { "version": "2.0.0", @@ -14789,11 +14859,13 @@ } }, "node_modules/micromatch": { - "version": "4.0.5", + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.8.tgz", + "integrity": "sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==", "dev": true, "license": "MIT", "dependencies": { - "braces": "^3.0.2", + "braces": "^3.0.3", "picomatch": "^2.3.1" }, "engines": { @@ -14802,6 +14874,8 @@ }, "node_modules/mime": { "version": "1.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", + "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", "dev": true, "license": "MIT", "bin": { @@ -15572,6 +15646,8 @@ }, "node_modules/on-finished": { "version": "2.4.1", + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz", + "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==", "dev": true, "license": "MIT", "dependencies": { @@ -16066,7 +16142,9 @@ } }, "node_modules/path-to-regexp": { - "version": "0.1.7", + "version": "0.1.10", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.10.tgz", + "integrity": "sha512-7lf7qcQidTku0Gu3YDPc8DJ1q7OOucfa/BSsIwjuh56VU7katFvuM8hULfkwB3Fns/rsVF7PwPKVw1sl5KQS9w==", "dev": true, "license": "MIT" }, @@ -17316,6 +17394,7 @@ "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.2.tgz", "integrity": "sha512-8zGqypfENjCIqGhgXToC8aB2r7YrBX+AQAfIPs/Mlk+BtPTztOvTS01NRW/3Eh60J+a48lt8qsCzirQ6loCVfA==", "dev": true, + "license": "MIT", "dependencies": { "bytes": "3.1.2", "http-errors": "2.0.0", @@ -17331,6 +17410,7 @@ "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", "dev": true, + "license": "MIT", "engines": { "node": ">= 0.8" } @@ -17340,6 +17420,7 @@ "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", "dev": true, + "license": "MIT", "dependencies": { "safer-buffer": ">= 2.1.2 < 3" }, @@ -18173,7 +18254,9 @@ "license": "ISC" }, "node_modules/send": { - "version": "0.18.0", + "version": "0.19.0", + "resolved": "https://registry.npmjs.org/send/-/send-0.19.0.tgz", + "integrity": "sha512-dW41u5VfLXu8SJh5bwRmyYUbAoSB3c9uQh6L8h/KtsFREPWpbX1lrljJo186Jc4nmci/sGUZ9a0a0J2zgfq2hw==", "dev": true, "license": "MIT", "dependencies": { @@ -18197,6 +18280,8 @@ }, "node_modules/send/node_modules/debug": { "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", "dev": true, "license": "MIT", "dependencies": { @@ -18205,11 +18290,25 @@ }, "node_modules/send/node_modules/debug/node_modules/ms": { "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", "dev": true, "license": "MIT" }, + "node_modules/send/node_modules/encodeurl": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", + "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.8" + } + }, "node_modules/send/node_modules/ms": { "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", "dev": true, "license": "MIT" }, @@ -18305,14 +18404,16 @@ } }, "node_modules/serve-static": { - "version": "1.15.0", + "version": "1.16.2", + "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.16.2.tgz", + "integrity": "sha512-VqpjJZKadQB/PEbEwvFdO43Ax5dFBZ2UECszz8bQ7pi7wt//PWe1P6MN7eCnjsatYtBT6EuiClbjSWP2WrIoTw==", "dev": true, "license": "MIT", "dependencies": { - "encodeurl": "~1.0.2", + "encodeurl": "~2.0.0", "escape-html": "~1.0.3", "parseurl": "~1.3.3", - "send": "0.18.0" + "send": "0.19.0" }, "engines": { "node": ">= 0.8.0" @@ -18350,6 +18451,8 @@ }, "node_modules/setprototypeof": { "version": "1.2.0", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", + "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==", "dev": true, "license": "ISC" }, @@ -18414,13 +18517,19 @@ } }, "node_modules/side-channel": { - "version": "1.0.4", + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.6.tgz", + "integrity": "sha512-fDW/EZ6Q9RiO8eFG8Hj+7u/oW+XrPTIChwCOM2+th2A6OblDtYYIpve9m+KvI9Z4C9qSEXlaGR6bTEYHReuglA==", "dev": true, "license": "MIT", "dependencies": { - "call-bind": "^1.0.0", - "get-intrinsic": "^1.0.2", - "object-inspect": "^1.9.0" + "call-bind": "^1.0.7", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.4", + "object-inspect": "^1.13.1" + }, + "engines": { + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" @@ -18780,6 +18889,8 @@ }, "node_modules/statuses": { "version": "2.0.1", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", + "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", "dev": true, "license": "MIT", "engines": { @@ -19446,6 +19557,8 @@ }, "node_modules/tapable": { "version": "2.2.1", + "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz", + "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==", "dev": true, "license": "MIT", "engines": { @@ -19695,6 +19808,8 @@ }, "node_modules/to-regex-range": { "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", "dev": true, "license": "MIT", "dependencies": { @@ -19706,6 +19821,8 @@ }, "node_modules/toidentifier": { "version": "1.0.1", + "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz", + "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==", "dev": true, "license": "MIT", "engines": { @@ -19902,6 +20019,7 @@ "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz", "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==", "dev": true, + "license": "MIT", "dependencies": { "media-typer": "0.3.0", "mime-types": "~2.1.24" @@ -20092,6 +20210,8 @@ }, "node_modules/unpipe": { "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", + "integrity": "sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==", "dev": true, "license": "MIT", "engines": { @@ -20398,7 +20518,9 @@ } }, "node_modules/watchpack": { - "version": "2.4.0", + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.4.2.tgz", + "integrity": "sha512-TnbFSbcOCcDgjZ4piURLCbJ3nJhznVh9kw6F6iokjiFPl8ONxe9A6nMDVXDiNbrSfLILs6vB07F7wLBrwPYzJw==", "dev": true, "license": "MIT", "dependencies": { @@ -20440,33 +20562,34 @@ } }, "node_modules/webpack": { - "version": "5.89.0", + "version": "5.95.0", + "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.95.0.tgz", + "integrity": "sha512-2t3XstrKULz41MNMBF+cJ97TyHdyQ8HCt//pqErqDvNjU9YQBnZxIHa11VXsi7F3mb5/aO2tuDxdeTPdU7xu9Q==", "dev": true, "license": "MIT", "dependencies": { - "@types/eslint-scope": "^3.7.3", - "@types/estree": "^1.0.0", - "@webassemblyjs/ast": "^1.11.5", - "@webassemblyjs/wasm-edit": "^1.11.5", - "@webassemblyjs/wasm-parser": "^1.11.5", + "@types/estree": "^1.0.5", + "@webassemblyjs/ast": "^1.12.1", + "@webassemblyjs/wasm-edit": "^1.12.1", + "@webassemblyjs/wasm-parser": "^1.12.1", "acorn": "^8.7.1", - "acorn-import-assertions": "^1.9.0", - "browserslist": "^4.14.5", + "acorn-import-attributes": "^1.9.5", + "browserslist": "^4.21.10", "chrome-trace-event": "^1.0.2", - "enhanced-resolve": "^5.15.0", + "enhanced-resolve": "^5.17.1", "es-module-lexer": "^1.2.1", "eslint-scope": "5.1.1", "events": "^3.2.0", "glob-to-regexp": "^0.4.1", - "graceful-fs": "^4.2.9", + "graceful-fs": "^4.2.11", "json-parse-even-better-errors": "^2.3.1", "loader-runner": "^4.2.0", "mime-types": "^2.1.27", "neo-async": "^2.6.2", "schema-utils": "^3.2.0", "tapable": "^2.1.1", - "terser-webpack-plugin": "^5.3.7", - "watchpack": "^2.4.0", + "terser-webpack-plugin": "^5.3.10", + "watchpack": "^2.4.1", "webpack-sources": "^3.2.3" }, "bin": { @@ -20523,7 +20646,9 @@ } }, "node_modules/webpack-bundle-analyzer/node_modules/ws": { - "version": "7.5.9", + "version": "7.5.10", + "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.10.tgz", + "integrity": "sha512-+dbF1tHwZpXcbOJdVOkzLDxZP1ailvSxM6ZweXTegylPny803bFhA+vqBYw4s31NSAk4S2Qz+AKXK9a4wkdjcQ==", "dev": true, "license": "MIT", "engines": { @@ -21088,7 +21213,9 @@ } }, "node_modules/ws": { - "version": "8.16.0", + "version": "8.18.0", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.18.0.tgz", + "integrity": "sha512-8VbfWfHLbbwu3+N6OKsOMpBdT4kXPDDB9cJk2bJ6mh9ucxdlnNvH1e+roYkKmN9Nxw2yjz7VzeO9oOz2zJ04Pw==", "dev": true, "license": "MIT", "engines": { @@ -23970,24 +24097,10 @@ "@types/node": "*" } }, - "@types/eslint": { - "version": "8.56.2", - "dev": true, - "requires": { - "@types/estree": "*", - "@types/json-schema": "*" - } - }, - "@types/eslint-scope": { - "version": "3.7.7", - "dev": true, - "requires": { - "@types/eslint": "*", - "@types/estree": "*" - } - }, "@types/estree": { - "version": "1.0.5", + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.6.tgz", + "integrity": "sha512-AYnb1nQyY49te+VRAVgmzfcgjYS91mY5P0TKUDCLEM+gNnA+3T6rWITXRLYCpahpqSQbN5cE+gHpnPyXjHWxcw==", "dev": true }, "@types/express": { @@ -24443,7 +24556,9 @@ } }, "@webassemblyjs/ast": { - "version": "1.11.6", + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.12.1.tgz", + "integrity": "sha512-EKfMUOPRRUTy5UII4qJDGPpqfwjOmZ5jeGFwid9mnoqIFK+e0vqoi1qH56JpmZSzEL53jKnNzScdmftJyG5xWg==", "dev": true, "requires": { "@webassemblyjs/helper-numbers": "1.11.6", @@ -24452,18 +24567,26 @@ }, "@webassemblyjs/floating-point-hex-parser": { "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.11.6.tgz", + "integrity": "sha512-ejAj9hfRJ2XMsNHk/v6Fu2dGS+i4UaXBXGemOfQ/JfQ6mdQg/WXtwleQRLLS4OvfDhv8rYnVwH27YJLMyYsxhw==", "dev": true }, "@webassemblyjs/helper-api-error": { "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.11.6.tgz", + "integrity": "sha512-o0YkoP4pVu4rN8aTJgAyj9hC2Sv5UlkzCHhxqWj8butaLvnpdc2jOwh4ewE6CX0txSfLn/UYaV/pheS2Txg//Q==", "dev": true }, "@webassemblyjs/helper-buffer": { - "version": "1.11.6", + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.12.1.tgz", + "integrity": "sha512-nzJwQw99DNDKr9BVCOZcLuJJUlqkJh+kVzVl6Fmq/tI5ZtEyWT1KZMyOXltXLZJmDtvLCDgwsyrkohEtopTXCw==", "dev": true }, "@webassemblyjs/helper-numbers": { "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-numbers/-/helper-numbers-1.11.6.tgz", + "integrity": "sha512-vUIhZ8LZoIWHBohiEObxVm6hwP034jwmc9kuq5GdHZH0wiLVLIPcMCdpJzG4C11cHoQ25TFIQj9kaVADVX7N3g==", "dev": true, "requires": { "@webassemblyjs/floating-point-hex-parser": "1.11.6", @@ -24473,20 +24596,26 @@ }, "@webassemblyjs/helper-wasm-bytecode": { "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.11.6.tgz", + "integrity": "sha512-sFFHKwcmBprO9e7Icf0+gddyWYDViL8bpPjJJl0WHxCdETktXdmtWLGVzoHbqUcY4Be1LkNfwTmXOJUFZYSJdA==", "dev": true }, "@webassemblyjs/helper-wasm-section": { - "version": "1.11.6", + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.12.1.tgz", + "integrity": "sha512-Jif4vfB6FJlUlSbgEMHUyk1j234GTNG9dBJ4XJdOySoj518Xj0oGsNi59cUQF4RRMS9ouBUxDDdyBVfPTypa5g==", "dev": true, "requires": { - "@webassemblyjs/ast": "1.11.6", - "@webassemblyjs/helper-buffer": "1.11.6", + "@webassemblyjs/ast": "1.12.1", + "@webassemblyjs/helper-buffer": "1.12.1", "@webassemblyjs/helper-wasm-bytecode": "1.11.6", - "@webassemblyjs/wasm-gen": "1.11.6" + "@webassemblyjs/wasm-gen": "1.12.1" } }, "@webassemblyjs/ieee754": { "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.11.6.tgz", + "integrity": "sha512-LM4p2csPNvbij6U1f19v6WR56QZ8JcHg3QIJTlSwzFcmx6WSORicYj6I63f9yU1kEUtrpG+kjkiIAkevHpDXrg==", "dev": true, "requires": { "@xtuc/ieee754": "^1.2.0" @@ -24494,6 +24623,8 @@ }, "@webassemblyjs/leb128": { "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.11.6.tgz", + "integrity": "sha512-m7a0FhE67DQXgouf1tbN5XQcdWoNgaAuoULHIfGFIEVKA6tu/edls6XnIlkmS6FrXAquJRPni3ZZKjw6FSPjPQ==", "dev": true, "requires": { "@xtuc/long": "4.2.2" @@ -24501,27 +24632,33 @@ }, "@webassemblyjs/utf8": { "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.11.6.tgz", + "integrity": "sha512-vtXf2wTQ3+up9Zsg8sa2yWiQpzSsMyXj0qViVP6xKGCUT8p8YJ6HqI7l5eCnWx1T/FYdsv07HQs2wTFbbof/RA==", "dev": true }, "@webassemblyjs/wasm-edit": { - "version": "1.11.6", + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.12.1.tgz", + "integrity": "sha512-1DuwbVvADvS5mGnXbE+c9NfA8QRcZ6iKquqjjmR10k6o+zzsRVesil54DKexiowcFCPdr/Q0qaMgB01+SQ1u6g==", "dev": true, "requires": { - "@webassemblyjs/ast": "1.11.6", - "@webassemblyjs/helper-buffer": "1.11.6", + "@webassemblyjs/ast": "1.12.1", + "@webassemblyjs/helper-buffer": "1.12.1", "@webassemblyjs/helper-wasm-bytecode": "1.11.6", - "@webassemblyjs/helper-wasm-section": "1.11.6", - "@webassemblyjs/wasm-gen": "1.11.6", - "@webassemblyjs/wasm-opt": "1.11.6", - "@webassemblyjs/wasm-parser": "1.11.6", - "@webassemblyjs/wast-printer": "1.11.6" + "@webassemblyjs/helper-wasm-section": "1.12.1", + "@webassemblyjs/wasm-gen": "1.12.1", + "@webassemblyjs/wasm-opt": "1.12.1", + "@webassemblyjs/wasm-parser": "1.12.1", + "@webassemblyjs/wast-printer": "1.12.1" } }, "@webassemblyjs/wasm-gen": { - "version": "1.11.6", + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.12.1.tgz", + "integrity": "sha512-TDq4Ojh9fcohAw6OIMXqiIcTq5KUXTGRkVxbSo1hQnSy6lAM5GSdfwWeSxpAo0YzgsgF182E/U0mDNhuA0tW7w==", "dev": true, "requires": { - "@webassemblyjs/ast": "1.11.6", + "@webassemblyjs/ast": "1.12.1", "@webassemblyjs/helper-wasm-bytecode": "1.11.6", "@webassemblyjs/ieee754": "1.11.6", "@webassemblyjs/leb128": "1.11.6", @@ -24529,20 +24666,24 @@ } }, "@webassemblyjs/wasm-opt": { - "version": "1.11.6", + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.12.1.tgz", + "integrity": "sha512-Jg99j/2gG2iaz3hijw857AVYekZe2SAskcqlWIZXjji5WStnOpVoat3gQfT/Q5tb2djnCjBtMocY/Su1GfxPBg==", "dev": true, "requires": { - "@webassemblyjs/ast": "1.11.6", - "@webassemblyjs/helper-buffer": "1.11.6", - "@webassemblyjs/wasm-gen": "1.11.6", - "@webassemblyjs/wasm-parser": "1.11.6" + "@webassemblyjs/ast": "1.12.1", + "@webassemblyjs/helper-buffer": "1.12.1", + "@webassemblyjs/wasm-gen": "1.12.1", + "@webassemblyjs/wasm-parser": "1.12.1" } }, "@webassemblyjs/wasm-parser": { - "version": "1.11.6", + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.12.1.tgz", + "integrity": "sha512-xikIi7c2FHXysxXe3COrVUPSheuBtpcfhbpFj4gmu7KRLYOzANztwUU0IbsqvMqzuNK2+glRGWCEqZo1WCLyAQ==", "dev": true, "requires": { - "@webassemblyjs/ast": "1.11.6", + "@webassemblyjs/ast": "1.12.1", "@webassemblyjs/helper-api-error": "1.11.6", "@webassemblyjs/helper-wasm-bytecode": "1.11.6", "@webassemblyjs/ieee754": "1.11.6", @@ -24551,10 +24692,12 @@ } }, "@webassemblyjs/wast-printer": { - "version": "1.11.6", + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.12.1.tgz", + "integrity": "sha512-+X4WAlOisVWQMikjbcvY2e0rwPsKQ9F688lksZhBcPycBBuii3O7m8FACbDMWDojpAqvjIncrG8J0XHKyQfVeA==", "dev": true, "requires": { - "@webassemblyjs/ast": "1.11.6", + "@webassemblyjs/ast": "1.12.1", "@xtuc/long": "4.2.2" } }, @@ -24706,9 +24849,9 @@ }, "dependencies": { "path-to-regexp": { - "version": "6.2.2", - "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-6.2.2.tgz", - "integrity": "sha512-GQX3SSMokngb36+whdpRXE+3f9V8UzyAorlYvOGx87ufGHehNTn5lCxrKtLyZ4Yl/wEKnNnr98ZzOwwDZV5ogw==" + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-6.3.0.tgz", + "integrity": "sha512-Yhpw4T9C6hPpgPeA28us07OJeqZ5EzQTkbfwuhsUg0c237RomFoETJgmp2sa3F/41gfLE6G5cqcYwznmeEeOlQ==" }, "remove-accents": { "version": "0.5.0", @@ -25194,10 +25337,14 @@ }, "@xtuc/ieee754": { "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz", + "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==", "dev": true }, "@xtuc/long": { "version": "4.2.2", + "resolved": "https://registry.npmjs.org/@xtuc/long/-/long-4.2.2.tgz", + "integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==", "dev": true }, "abab": { @@ -25224,8 +25371,10 @@ "acorn-walk": "^8.0.2" } }, - "acorn-import-assertions": { - "version": "1.9.0", + "acorn-import-attributes": { + "version": "1.9.5", + "resolved": "https://registry.npmjs.org/acorn-import-attributes/-/acorn-import-attributes-1.9.5.tgz", + "integrity": "sha512-n02Vykv5uA3eHGM/Z2dQrcD56kL8TyDb2p1+0P83PClMnC/nc+anbQRhIOWnSq4Ke/KvDPrY3C9hDtC/A3eHnQ==", "dev": true }, "acorn-jsx": { @@ -25595,9 +25744,9 @@ "dev": true }, "axios": { - "version": "1.6.8", - "resolved": "https://registry.npmjs.org/axios/-/axios-1.6.8.tgz", - "integrity": "sha512-v/ZHtJDU39mDpyBoFVkETcd/uNdxrWRrg3bKpOKzXFA6Bvqopts6ALSMU3y6ijYxbw2B+wPrIv46egTzJXCLGQ==", + "version": "1.7.7", + "resolved": "https://registry.npmjs.org/axios/-/axios-1.7.7.tgz", + "integrity": "sha512-S4kL7XrjgBmvdGut0sN3yJxqYzrDOnivkBiN0OFs6hLiUam3UPvswUo0kqGyhqUZGEOytHyumEdXsAkgCOUf3Q==", "dev": true, "requires": { "follow-redirects": "^1.15.6", @@ -25837,9 +25986,9 @@ "dev": true }, "body-parser": { - "version": "1.20.2", - "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.2.tgz", - "integrity": "sha512-ml9pReCu3M61kGlqoTm2umSXTlRTuGTx0bfYj+uIUKKYycG5NtSbeetV3faSU6R7ajOPw0g/J1PvK4qNy7s5bA==", + "version": "1.20.3", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.3.tgz", + "integrity": "sha512-7rAxByjUMqQ3/bHJy7D6OGXvx/MMc4IqBn/X0fcM1QUcAItpZrBEYhWGem+tzXH90c+G01ypMcYJBO9Y30203g==", "dev": true, "requires": { "bytes": "3.1.2", @@ -25850,7 +25999,7 @@ "http-errors": "2.0.0", "iconv-lite": "0.4.24", "on-finished": "2.4.1", - "qs": "6.11.0", + "qs": "6.13.0", "raw-body": "2.5.2", "type-is": "~1.6.18", "unpipe": "1.0.0" @@ -25887,12 +26036,12 @@ "dev": true }, "qs": { - "version": "6.11.0", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.11.0.tgz", - "integrity": "sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q==", + "version": "6.13.0", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.13.0.tgz", + "integrity": "sha512-+38qI9SOr8tfZ4QmJNplMUxqjbe7LKvvZgWdExBOmd+egZTtjLB67Gu0HRX3u/XOq7UU2Nx6nsjvS16Z9uwfpg==", "dev": true, "requires": { - "side-channel": "^1.0.4" + "side-channel": "^1.0.6" } } } @@ -25920,10 +26069,12 @@ } }, "braces": { - "version": "3.0.2", + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz", + "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==", "dev": true, "requires": { - "fill-range": "^7.0.1" + "fill-range": "^7.1.1" } }, "browserslist": { @@ -26498,9 +26649,9 @@ "dev": true }, "cookie": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.6.0.tgz", - "integrity": "sha512-U71cyTamuh1CRNCfpGY6to28lxvNwPG4Guz/EVjgf3Jmzv0vlDp1atT9eS5dDjMYHucpHbWns6Lwf3BKz6svdw==", + "version": "0.7.1", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.7.1.tgz", + "integrity": "sha512-6DnInpx7SJ2AK3+CTUE/ZM0vWTUboZCegxhC2xiIydHR9jNuTAASBrfEpHhiGOZw/nX51bHt6YQl8jsGo4y/0w==", "dev": true }, "cookie-signature": { @@ -27267,6 +27418,8 @@ }, "depd": { "version": "2.0.0", + "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", + "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==", "dev": true }, "dequal": { @@ -27277,6 +27430,8 @@ }, "destroy": { "version": "1.2.0", + "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz", + "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==", "dev": true }, "detect-newline": { @@ -27452,6 +27607,8 @@ }, "ee-first": { "version": "1.1.1", + "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", + "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==", "dev": true }, "electron-to-chromium": { @@ -27473,7 +27630,9 @@ "dev": true }, "encodeurl": { - "version": "1.0.2", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-2.0.0.tgz", + "integrity": "sha512-Q0n9HRi4m6JuGIV1eFlmvJB7ZEVxu93IrMyiMsGC0lrMJMWzRgx6WGquyfQgZVb31vhGgXnfmPNNXmxnOkRBrg==", "dev": true }, "encoding": { @@ -27490,7 +27649,9 @@ } }, "enhanced-resolve": { - "version": "5.15.0", + "version": "5.17.1", + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.17.1.tgz", + "integrity": "sha512-LMHl3dXhTcfv8gM4kEzIUeTQ+7fpdA0l2tUf34BddXPkz2A5xJ5L/Pchd5BL6rdccM9QGvu0sWZzK1Z1t4wwyg==", "dev": true, "requires": { "graceful-fs": "^4.2.4", @@ -28200,6 +28361,8 @@ }, "etag": { "version": "1.8.1", + "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", + "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==", "dev": true }, "eventemitter2": { @@ -28300,37 +28463,37 @@ "dev": true }, "express": { - "version": "4.19.2", - "resolved": "https://registry.npmjs.org/express/-/express-4.19.2.tgz", - "integrity": "sha512-5T6nhjsT+EOMzuck8JjBHARTHfMht0POzlA60WV2pMD3gyXw2LZnZ+ueGdNxG+0calOJcWKbpFcuzLZ91YWq9Q==", + "version": "4.21.1", + "resolved": "https://registry.npmjs.org/express/-/express-4.21.1.tgz", + "integrity": "sha512-YSFlK1Ee0/GC8QaO91tHcDxJiE/X4FbpAyQWkxAvG6AXCuR65YzK8ua6D9hvi/TzUfZMpc+BwuM1IPw8fmQBiQ==", "dev": true, "requires": { "accepts": "~1.3.8", "array-flatten": "1.1.1", - "body-parser": "1.20.2", + "body-parser": "1.20.3", "content-disposition": "0.5.4", "content-type": "~1.0.4", - "cookie": "0.6.0", + "cookie": "0.7.1", "cookie-signature": "1.0.6", "debug": "2.6.9", "depd": "2.0.0", - "encodeurl": "~1.0.2", + "encodeurl": "~2.0.0", "escape-html": "~1.0.3", "etag": "~1.8.1", - "finalhandler": "1.2.0", + "finalhandler": "1.3.1", "fresh": "0.5.2", "http-errors": "2.0.0", - "merge-descriptors": "1.0.1", + "merge-descriptors": "1.0.3", "methods": "~1.1.2", "on-finished": "2.4.1", "parseurl": "~1.3.3", - "path-to-regexp": "0.1.7", + "path-to-regexp": "0.1.10", "proxy-addr": "~2.0.7", - "qs": "6.11.0", + "qs": "6.13.0", "range-parser": "~1.2.1", "safe-buffer": "5.2.1", - "send": "0.18.0", - "serve-static": "1.15.0", + "send": "0.19.0", + "serve-static": "1.16.2", "setprototypeof": "1.2.0", "statuses": "2.0.1", "type-is": "~1.6.18", @@ -28350,10 +28513,12 @@ "dev": true }, "qs": { - "version": "6.11.0", + "version": "6.13.0", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.13.0.tgz", + "integrity": "sha512-+38qI9SOr8tfZ4QmJNplMUxqjbe7LKvvZgWdExBOmd+egZTtjLB67Gu0HRX3u/XOq7UU2Nx6nsjvS16Z9uwfpg==", "dev": true, "requires": { - "side-channel": "^1.0.4" + "side-channel": "^1.0.6" } } } @@ -28517,18 +28682,22 @@ } }, "fill-range": { - "version": "7.0.1", + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz", + "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==", "dev": true, "requires": { "to-regex-range": "^5.0.1" } }, "finalhandler": { - "version": "1.2.0", + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.3.1.tgz", + "integrity": "sha512-6BN9trH7bp3qvnrRyzsBz+g3lZxTNZTbVO2EV1CS0WIcDbawYVdYvGflME/9QP0h0pYlCDBCTjYa9nZzMDpyxQ==", "dev": true, "requires": { "debug": "2.6.9", - "encodeurl": "~1.0.2", + "encodeurl": "~2.0.0", "escape-html": "~1.0.3", "on-finished": "2.4.1", "parseurl": "~1.3.3", @@ -28538,6 +28707,8 @@ "dependencies": { "debug": { "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", "dev": true, "requires": { "ms": "2.0.0" @@ -28545,6 +28716,8 @@ }, "ms": { "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", "dev": true } } @@ -28753,6 +28926,8 @@ }, "fresh": { "version": "0.5.2", + "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", + "integrity": "sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==", "dev": true }, "fs-constants": { @@ -28925,6 +29100,8 @@ }, "glob-to-regexp": { "version": "0.4.1", + "resolved": "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz", + "integrity": "sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==", "dev": true }, "global-dirs": { @@ -29168,6 +29345,8 @@ }, "http-errors": { "version": "2.0.0", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz", + "integrity": "sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==", "dev": true, "requires": { "depd": "2.0.0", @@ -29579,6 +29758,8 @@ }, "is-number": { "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", "dev": true }, "is-number-object": { @@ -30760,9 +30941,9 @@ "dev": true }, "ws": { - "version": "7.5.9", - "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.9.tgz", - "integrity": "sha512-F+P9Jil7UiSKSkppIiD94dN07AwvFixvLIj1Og1Rl9GGMuNipJnV9JzjD6XuqmAeiswGvUmNLjr5cFuXwNS77Q==", + "version": "7.5.10", + "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.10.tgz", + "integrity": "sha512-+dbF1tHwZpXcbOJdVOkzLDxZP1ailvSxM6ZweXTegylPny803bFhA+vqBYw4s31NSAk4S2Qz+AKXK9a4wkdjcQ==", "dev": true } } @@ -31198,7 +31379,9 @@ } }, "merge-descriptors": { - "version": "1.0.1", + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.3.tgz", + "integrity": "sha512-gaNvAS7TZ897/rVaZ0nMtAyxNyi/pdbjbAwUpFQpN70GqnVfOiXpeUUMKRBmzXaSQ8DdTX4/0ms62r2K+hE6mQ==", "dev": true }, "merge-stream": { @@ -31220,15 +31403,19 @@ "dev": true }, "micromatch": { - "version": "4.0.5", + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.8.tgz", + "integrity": "sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==", "dev": true, "requires": { - "braces": "^3.0.2", + "braces": "^3.0.3", "picomatch": "^2.3.1" } }, "mime": { "version": "1.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", + "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", "dev": true }, "mime-db": { @@ -31726,6 +31913,8 @@ }, "on-finished": { "version": "2.4.1", + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz", + "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==", "dev": true, "requires": { "ee-first": "1.1.1" @@ -32061,7 +32250,9 @@ } }, "path-to-regexp": { - "version": "0.1.7", + "version": "0.1.10", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.10.tgz", + "integrity": "sha512-7lf7qcQidTku0Gu3YDPc8DJ1q7OOucfa/BSsIwjuh56VU7katFvuM8hULfkwB3Fns/rsVF7PwPKVw1sl5KQS9w==", "dev": true }, "path-type": { @@ -33328,7 +33519,9 @@ } }, "send": { - "version": "0.18.0", + "version": "0.19.0", + "resolved": "https://registry.npmjs.org/send/-/send-0.19.0.tgz", + "integrity": "sha512-dW41u5VfLXu8SJh5bwRmyYUbAoSB3c9uQh6L8h/KtsFREPWpbX1lrljJo186Jc4nmci/sGUZ9a0a0J2zgfq2hw==", "dev": true, "requires": { "debug": "2.6.9", @@ -33348,6 +33541,8 @@ "dependencies": { "debug": { "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", "dev": true, "requires": { "ms": "2.0.0" @@ -33355,12 +33550,22 @@ "dependencies": { "ms": { "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", "dev": true } } }, + "encodeurl": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", + "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==", + "dev": true + }, "ms": { "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", "dev": true } } @@ -33438,13 +33643,15 @@ } }, "serve-static": { - "version": "1.15.0", + "version": "1.16.2", + "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.16.2.tgz", + "integrity": "sha512-VqpjJZKadQB/PEbEwvFdO43Ax5dFBZ2UECszz8bQ7pi7wt//PWe1P6MN7eCnjsatYtBT6EuiClbjSWP2WrIoTw==", "dev": true, "requires": { - "encodeurl": "~1.0.2", + "encodeurl": "~2.0.0", "escape-html": "~1.0.3", "parseurl": "~1.3.3", - "send": "0.18.0" + "send": "0.19.0" } }, "set-function-length": { @@ -33472,6 +33679,8 @@ }, "setprototypeof": { "version": "1.2.0", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", + "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==", "dev": true }, "shallow-clone": { @@ -33513,12 +33722,15 @@ "dev": true }, "side-channel": { - "version": "1.0.4", + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.6.tgz", + "integrity": "sha512-fDW/EZ6Q9RiO8eFG8Hj+7u/oW+XrPTIChwCOM2+th2A6OblDtYYIpve9m+KvI9Z4C9qSEXlaGR6bTEYHReuglA==", "dev": true, "requires": { - "call-bind": "^1.0.0", - "get-intrinsic": "^1.0.2", - "object-inspect": "^1.9.0" + "call-bind": "^1.0.7", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.4", + "object-inspect": "^1.13.1" } }, "signal-exit": { @@ -33782,6 +33994,8 @@ }, "statuses": { "version": "2.0.1", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", + "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", "dev": true }, "stop-iteration-iterator": { @@ -34251,6 +34465,8 @@ }, "tapable": { "version": "2.2.1", + "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz", + "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==", "dev": true }, "tar-fs": { @@ -34414,6 +34630,8 @@ }, "to-regex-range": { "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", "dev": true, "requires": { "is-number": "^7.0.0" @@ -34421,6 +34639,8 @@ }, "toidentifier": { "version": "1.0.1", + "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz", + "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==", "dev": true }, "totalist": { @@ -34689,6 +34909,8 @@ }, "unpipe": { "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", + "integrity": "sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==", "dev": true }, "untildify": { @@ -34870,7 +35092,9 @@ } }, "watchpack": { - "version": "2.4.0", + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.4.2.tgz", + "integrity": "sha512-TnbFSbcOCcDgjZ4piURLCbJ3nJhznVh9kw6F6iokjiFPl8ONxe9A6nMDVXDiNbrSfLILs6vB07F7wLBrwPYzJw==", "dev": true, "requires": { "glob-to-regexp": "^0.4.1", @@ -34902,32 +35126,33 @@ "dev": true }, "webpack": { - "version": "5.89.0", + "version": "5.95.0", + "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.95.0.tgz", + "integrity": "sha512-2t3XstrKULz41MNMBF+cJ97TyHdyQ8HCt//pqErqDvNjU9YQBnZxIHa11VXsi7F3mb5/aO2tuDxdeTPdU7xu9Q==", "dev": true, "requires": { - "@types/eslint-scope": "^3.7.3", - "@types/estree": "^1.0.0", - "@webassemblyjs/ast": "^1.11.5", - "@webassemblyjs/wasm-edit": "^1.11.5", - "@webassemblyjs/wasm-parser": "^1.11.5", + "@types/estree": "^1.0.5", + "@webassemblyjs/ast": "^1.12.1", + "@webassemblyjs/wasm-edit": "^1.12.1", + "@webassemblyjs/wasm-parser": "^1.12.1", "acorn": "^8.7.1", - "acorn-import-assertions": "^1.9.0", - "browserslist": "^4.14.5", + "acorn-import-attributes": "^1.9.5", + "browserslist": "^4.21.10", "chrome-trace-event": "^1.0.2", - "enhanced-resolve": "^5.15.0", + "enhanced-resolve": "^5.17.1", "es-module-lexer": "^1.2.1", "eslint-scope": "5.1.1", "events": "^3.2.0", "glob-to-regexp": "^0.4.1", - "graceful-fs": "^4.2.9", + "graceful-fs": "^4.2.11", "json-parse-even-better-errors": "^2.3.1", "loader-runner": "^4.2.0", "mime-types": "^2.1.27", "neo-async": "^2.6.2", "schema-utils": "^3.2.0", "tapable": "^2.1.1", - "terser-webpack-plugin": "^5.3.7", - "watchpack": "^2.4.0", + "terser-webpack-plugin": "^5.3.10", + "watchpack": "^2.4.1", "webpack-sources": "^3.2.3" } }, @@ -34955,7 +35180,9 @@ "dev": true }, "ws": { - "version": "7.5.9", + "version": "7.5.10", + "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.10.tgz", + "integrity": "sha512-+dbF1tHwZpXcbOJdVOkzLDxZP1ailvSxM6ZweXTegylPny803bFhA+vqBYw4s31NSAk4S2Qz+AKXK9a4wkdjcQ==", "dev": true } } @@ -35321,7 +35548,9 @@ } }, "ws": { - "version": "8.16.0", + "version": "8.18.0", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.18.0.tgz", + "integrity": "sha512-8VbfWfHLbbwu3+N6OKsOMpBdT4kXPDDB9cJk2bJ6mh9ucxdlnNvH1e+roYkKmN9Nxw2yjz7VzeO9oOz2zJ04Pw==", "dev": true }, "xdg-basedir": { diff --git a/package.json b/package.json index 51cfee9a..34dea2c0 100644 --- a/package.json +++ b/package.json @@ -2,7 +2,7 @@ "name": "@newfold-labs/wp-module-ecommerce", "description": "Brand Agnostic eCommerce Experience", "license": "GPL-2.0-or-later", - "version": "1.3.44", + "version": "1.4.0-beta", "main": "build/index.js", "files": [ "build/", From 981c25bf763959a2126c0faad992662b9b614513 Mon Sep 17 00:00:00 2001 From: Evan Mullins Date: Wed, 9 Oct 2024 10:36:51 -0400 Subject: [PATCH 25/68] run `npm run build` --- build/index.asset.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build/index.asset.php b/build/index.asset.php index ec2bd323..733be5c3 100644 --- a/build/index.asset.php +++ b/build/index.asset.php @@ -1 +1 @@ - array('lodash', 'moment', 'react', 'react-dom', 'wp-api-fetch', 'wp-data', 'wp-date', 'wp-dom-ready', 'wp-element', 'wp-i18n', 'wp-url'), 'version' => '9c0b6e7c532590756eee'); + array('lodash', 'moment', 'react', 'react-dom', 'wp-api-fetch', 'wp-data', 'wp-date', 'wp-dom-ready', 'wp-element', 'wp-i18n', 'wp-url'), 'version' => '1e2489c811e01f5a9951'); From f279b30235de041062c209895fdadab4bdfa4bc4 Mon Sep 17 00:00:00 2001 From: Ramya krishna Date: Thu, 10 Oct 2024 13:10:36 +0530 Subject: [PATCH 26/68] show `Explore the features included with your solution` in next steps only if it has hasSolution --- src/configs/OnboardingList.config.js | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/configs/OnboardingList.config.js b/src/configs/OnboardingList.config.js index 532dce58..8008d7a8 100644 --- a/src/configs/OnboardingList.config.js +++ b/src/configs/OnboardingList.config.js @@ -89,13 +89,13 @@ export function OnboardingListDefinition(props) { id: "mypluginsandtools", text: __("Explore the features included with your solution", "wp-module-ecommerce"), state: { - isAvailable: (queries) => queries?.settings?.hasBrandSignedUp, - isCompleted: (queries) => !(queries?.settings?.hasBrandSignedUp), + isAvailable: () => NewfoldRuntime.hasCapability("hasSolution"), + isCompleted: () => false, url: () => `${myPluginsAndToolsPageLink}`, target: () => "_self", }, - shouldRender: () => (state) => state.isAvailable, + shouldRender: ( state ) => state.isAvailable, actions: { manage: () => clickMyPluginAndTools(), }, From 1ce6a555e5b8a365becd0c0c7b1fdfea81165e4d Mon Sep 17 00:00:00 2001 From: aratidgr8 Date: Thu, 10 Oct 2024 14:56:24 +0530 Subject: [PATCH 27/68] PRESS0-2275 fix --- src/components/NoExistingPlan.js | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/components/NoExistingPlan.js b/src/components/NoExistingPlan.js index 43d6d163..324a22dd 100644 --- a/src/components/NoExistingPlan.js +++ b/src/components/NoExistingPlan.js @@ -8,6 +8,8 @@ import { Section } from "./Section"; export function NoExistingPlan(props){ const { availableSolutions } = props; + availableSolutions?.sort((a, b) => a.priority - b.priority); + const HtmlContent = ({ htmlString }) => { return (
Date: Thu, 10 Oct 2024 15:24:40 +0530 Subject: [PATCH 28/68] Removed "Booking & Appointments and "Gift Cards" cards if no solution --- src/configs/ProductsAndServices.config.js | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) diff --git a/src/configs/ProductsAndServices.config.js b/src/configs/ProductsAndServices.config.js index fbd21ad9..841b0130 100644 --- a/src/configs/ProductsAndServices.config.js +++ b/src/configs/ProductsAndServices.config.js @@ -155,7 +155,7 @@ export const ProductsAndServicesDefinition = (props) => ({ }, { Card: FeatureCard, - shouldRender: () => true, + shouldRender: (state) => state.hasSolution, name: "booking", assets: ({ isActive }) => ({ Image: CalendarIcon, @@ -170,8 +170,11 @@ export const ProductsAndServicesDefinition = (props) => ({ actionName: state.isActive ? __('Manage Bookings & Appointments', 'wp-module-ecommerce') : __('Setup Bookings & Appointments', 'wp-module-ecommerce'), slug: "yith_wcbk_panel", }), - state: {...defineFeatureState(), featureUrl: () => NewfoldRuntime.adminUrl("admin.php?page=yith_wcbk_panel")}, - + state: { + ...defineFeatureState(), + featureUrl: () => NewfoldRuntime.adminUrl("admin.php?page=yith_wcbk_panel"), + hasSolution: () => NewfoldRuntime.hasCapability("hasSolution"), + }, actions: { installFeature: createPluginInstallAction( "nfd_slug_yith_woocommerce_booking", @@ -207,7 +210,7 @@ export const ProductsAndServicesDefinition = (props) => ({ }, { Card: FeatureCard, - shouldRender: () => true, + shouldRender: (state) => state.hasSolution, name: "gifts", assets: ({ isActive }) => ({ Image: GiftIcon, @@ -219,7 +222,11 @@ export const ProductsAndServicesDefinition = (props) => ({ actionName: state.isActive ? __('Manage Gift Cards', 'wp-module-ecommerce') : __('Create a Gift Card', 'wp-module-ecommerce'), slug: "yith_woocommerce_gift_cards_panel", }), - state: {...defineFeatureState(), featureUrl: () => NewfoldRuntime.adminUrl("admin.php?page=yith_woocommerce_gift_cards_panel")}, + state: { + ...defineFeatureState(), + featureUrl: () => NewfoldRuntime.adminUrl("admin.php?page=yith_woocommerce_gift_cards_panel"), + hasSolution: () => NewfoldRuntime.hasCapability("hasSolution") + }, actions: { installFeature: createPluginInstallAction( "nfd_slug_yith_woocommerce_gift_cards", From 6dcf058f9c800ec7c828402bea5c6c96deb4129f Mon Sep 17 00:00:00 2001 From: Mamatha Rao Date: Thu, 10 Oct 2024 15:36:52 +0530 Subject: [PATCH 29/68] Updated code review suggestion --- src/configs/ProductsAndServices.config.js | 16 ++++------------ 1 file changed, 4 insertions(+), 12 deletions(-) diff --git a/src/configs/ProductsAndServices.config.js b/src/configs/ProductsAndServices.config.js index 841b0130..ecfdf1d2 100644 --- a/src/configs/ProductsAndServices.config.js +++ b/src/configs/ProductsAndServices.config.js @@ -155,7 +155,7 @@ export const ProductsAndServicesDefinition = (props) => ({ }, { Card: FeatureCard, - shouldRender: (state) => state.hasSolution, + shouldRender: () => NewfoldRuntime.hasCapability("hasSolution"), name: "booking", assets: ({ isActive }) => ({ Image: CalendarIcon, @@ -170,11 +170,7 @@ export const ProductsAndServicesDefinition = (props) => ({ actionName: state.isActive ? __('Manage Bookings & Appointments', 'wp-module-ecommerce') : __('Setup Bookings & Appointments', 'wp-module-ecommerce'), slug: "yith_wcbk_panel", }), - state: { - ...defineFeatureState(), - featureUrl: () => NewfoldRuntime.adminUrl("admin.php?page=yith_wcbk_panel"), - hasSolution: () => NewfoldRuntime.hasCapability("hasSolution"), - }, + state: {...defineFeatureState(), featureUrl: () => NewfoldRuntime.adminUrl("admin.php?page=yith_wcbk_panel")}, actions: { installFeature: createPluginInstallAction( "nfd_slug_yith_woocommerce_booking", @@ -210,7 +206,7 @@ export const ProductsAndServicesDefinition = (props) => ({ }, { Card: FeatureCard, - shouldRender: (state) => state.hasSolution, + shouldRender: () => NewfoldRuntime.hasCapability("hasSolution"), name: "gifts", assets: ({ isActive }) => ({ Image: GiftIcon, @@ -222,11 +218,7 @@ export const ProductsAndServicesDefinition = (props) => ({ actionName: state.isActive ? __('Manage Gift Cards', 'wp-module-ecommerce') : __('Create a Gift Card', 'wp-module-ecommerce'), slug: "yith_woocommerce_gift_cards_panel", }), - state: { - ...defineFeatureState(), - featureUrl: () => NewfoldRuntime.adminUrl("admin.php?page=yith_woocommerce_gift_cards_panel"), - hasSolution: () => NewfoldRuntime.hasCapability("hasSolution") - }, + state: {...defineFeatureState(), featureUrl: () => NewfoldRuntime.adminUrl("admin.php?page=yith_woocommerce_gift_cards_panel")}, actions: { installFeature: createPluginInstallAction( "nfd_slug_yith_woocommerce_gift_cards", From ab3cd0b1ee19a6decd335d95d7f5b8d3850cc6e3 Mon Sep 17 00:00:00 2001 From: Mamatha Rao Date: Thu, 10 Oct 2024 15:38:31 +0530 Subject: [PATCH 30/68] Typo --- src/configs/ProductsAndServices.config.js | 1 + 1 file changed, 1 insertion(+) diff --git a/src/configs/ProductsAndServices.config.js b/src/configs/ProductsAndServices.config.js index ecfdf1d2..909f0347 100644 --- a/src/configs/ProductsAndServices.config.js +++ b/src/configs/ProductsAndServices.config.js @@ -171,6 +171,7 @@ export const ProductsAndServicesDefinition = (props) => ({ slug: "yith_wcbk_panel", }), state: {...defineFeatureState(), featureUrl: () => NewfoldRuntime.adminUrl("admin.php?page=yith_wcbk_panel")}, + actions: { installFeature: createPluginInstallAction( "nfd_slug_yith_woocommerce_booking", From c738715f6c56ba4171b4afe1825718594fb0dae4 Mon Sep 17 00:00:00 2001 From: Mamatha Rao Date: Thu, 10 Oct 2024 15:40:22 +0530 Subject: [PATCH 31/68] Extra spaces removed --- src/configs/ProductsAndServices.config.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/configs/ProductsAndServices.config.js b/src/configs/ProductsAndServices.config.js index 909f0347..22e79ca1 100644 --- a/src/configs/ProductsAndServices.config.js +++ b/src/configs/ProductsAndServices.config.js @@ -171,7 +171,7 @@ export const ProductsAndServicesDefinition = (props) => ({ slug: "yith_wcbk_panel", }), state: {...defineFeatureState(), featureUrl: () => NewfoldRuntime.adminUrl("admin.php?page=yith_wcbk_panel")}, - + actions: { installFeature: createPluginInstallAction( "nfd_slug_yith_woocommerce_booking", From 3e55ab0b801e349cdcdf3b4e3b45f52b770e1e19 Mon Sep 17 00:00:00 2001 From: Mamatha Rao Date: Thu, 10 Oct 2024 16:28:13 +0530 Subject: [PATCH 32/68] Removed purchase option if hasSolution is true and hasYithExtended is false --- src/configs/ProductsAndServices.config.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/configs/ProductsAndServices.config.js b/src/configs/ProductsAndServices.config.js index 22e79ca1..e0f23a13 100644 --- a/src/configs/ProductsAndServices.config.js +++ b/src/configs/ProductsAndServices.config.js @@ -36,7 +36,7 @@ function defineFeatureState() { isInstalling: (data) => data?.plugins?.isInstalling, isQueueEmpty: (data) => data?.plugins?.isQueueEmpty, hasUsedPlugin: (data) => data?.products.length > 0, - isUpsellNeeded: () => !NewfoldRuntime.hasCapability("hasYithExtended"), + isUpsellNeeded: () => !(NewfoldRuntime.hasCapability("hasYithExtended") && NewfoldRuntime.hasCapability("hasSolution")), featureUrl: (data) => data?.products.length > 0 ? data.plugins?.pluginUrl : null, upsellOptions: (data) => data?.upsellOptions, From 486695c0d327ec43b05415af7c143dfd03849468 Mon Sep 17 00:00:00 2001 From: aratidgr8 Date: Thu, 10 Oct 2024 17:50:50 +0530 Subject: [PATCH 33/68] PRESS0-2276 - fixes --- includes/Data/Plugins.php | 36 +++++++++++++- src/components/WPSolutionsBanner.js | 11 +++-- src/constants.js | 74 +++++++++++++++++++---------- 3 files changed, 90 insertions(+), 31 deletions(-) diff --git a/includes/Data/Plugins.php b/includes/Data/Plugins.php index 58212e19..7a3edc21 100644 --- a/includes/Data/Plugins.php +++ b/includes/Data/Plugins.php @@ -48,15 +48,47 @@ final class Plugins { * @var array> $free_plugins */ public static $premium_plugins = array( - // TODO: More plugins to be added here as once their data is available + + //Search Engine Optimization 'wp-seo' => array( 'url' => 'wp-admin/admin.php?page=wpseo_dashboard#top#first-time-configuration', 'file' => 'wordpress-seo/wp-seo.php' ), + //Offer Content Courses 'sensei-lms' => array( - 'url' => 'wp-admin/admin.php?page=wpseo_dashboard#top#first-time-configuration', + 'url' => 'wp-admin/post-new.php?post_type=course', 'file' => 'sensei-lms/sensei-lms.php' ), + //Add An Affiliate Program + 'yith-woocommerce-affiliates' => array( + 'url' => 'wp-admin/admin.php?page=yith_wcaf_panel&tab=settings&sub_tab=settings-general', + 'file' => 'yith-woocommerce-affiliates-premium/init.php' + ), + //Setup Bookings + 'yith-woocommerce-booking' => array( + 'url' => 'wp-admin/edit.php?post_type=yith_booking&yith-plugin-fw-panel-skip-redirect=1', + 'file' => 'yith-woocommerce-booking/init.php' + ), + //Setup A Loyalty Program + 'yith-woocommerce-points-and-rewards' => array( + 'url' => 'wp-admin/admin.php?page=yith_woocommerce_points_and_rewards&tab=points&sub_tab=points-standard', + 'file' => 'yith-woocommerce-points-and-rewards/init.php' + ), + //Setup WishList + 'yith-woocommerce-wishlist' => array( + 'url' => 'wp-admin/admin.php?page=yith_wcwl_panel&tab=settings&sub_tab=settings-general', + 'file' => 'yith-woocommerce-wishlist/init.php' + ), + //Enable Product Reviews + 'yith-woocommerce-advanced-reviews' => array( + 'url' => 'wp-admin/admin.php?page=yith_ywar_panel', + 'file' => 'yith-woocommerce-advanced-reviews/init.php' + ), + //Create a Sales Campaign + 'yith-woocommerce-dynamic-pricing-and-discounts' => array( + 'url' => 'wp-admin/edit.php?post_type=ywdpd_discount&yith-plugin-fw-panel-skip-redirect=1', + 'file' => 'yith-woocommerce-dynamic-pricing-and-discounts/init.php' + ) ); /** diff --git a/src/components/WPSolutionsBanner.js b/src/components/WPSolutionsBanner.js index a15f5fda..eeac83d7 100644 --- a/src/components/WPSolutionsBanner.js +++ b/src/components/WPSolutionsBanner.js @@ -28,7 +28,7 @@ export function WPSolutionsBanner() { "nfd_slug_wonder_cart", () => PluginsSdk.queries - .status("nfd_slug_wonder_cart", "sensei-lms", "wp-seo") + .status("nfd_slug_wonder_cart", "sensei-lms", "wp-seo", "yith-woocommerce-affiliates", "yith-woocommerce-booking", "yith-woocommerce-points-and-rewards", "yith-woocommerce-wishlist", "yith-woocommerce-advanced-reviews", "yith-woocommerce-dynamic-pricing-and-discounts") .then(res => { setPluginActiveStatusArray(res?.details) }), @@ -100,9 +100,9 @@ export function WPSolutionsBanner() { { __(`${details['description']}`,"wp-module-ecommerce") }

{ - details.slug !== "" ? + details.plsSlug !== "" ? Object.entries(pluginActiveStatusArray).map(([slug, { status, url }]) => ( - details.slug === slug ? + details.plsSlug === slug ? status === "active" ? From 4283b3f36c2fb35bf71dcb0e242b2b774190c3dd Mon Sep 17 00:00:00 2001 From: Evan Mullins Date: Thu, 10 Oct 2024 12:28:47 -0400 Subject: [PATCH 36/68] remove comments --- src/components/WPSolutionsBanner.js | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/src/components/WPSolutionsBanner.js b/src/components/WPSolutionsBanner.js index ba066d10..4fd6741b 100644 --- a/src/components/WPSolutionsBanner.js +++ b/src/components/WPSolutionsBanner.js @@ -86,9 +86,7 @@ export function WPSolutionsBanner() {
@@ -141,9 +139,7 @@ export function WPSolutionsBanner() {
From 1606fe28e80b5b313178db3f4c170530657047cb Mon Sep 17 00:00:00 2001 From: Evan Mullins Date: Thu, 10 Oct 2024 12:29:10 -0400 Subject: [PATCH 37/68] use index value in key --- src/components/WPSolutionsBanner.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/components/WPSolutionsBanner.js b/src/components/WPSolutionsBanner.js index 4fd6741b..33b2820a 100644 --- a/src/components/WPSolutionsBanner.js +++ b/src/components/WPSolutionsBanner.js @@ -92,7 +92,7 @@ export function WPSolutionsBanner() {
{ solutionsCards?.map((details, index) => { - return (
+ return (

{ __(`${details['title']}`,"wp-module-ecommerce") }

From 8fe1c5b93a43882987fa47dbe249dceba81cf4dd Mon Sep 17 00:00:00 2001 From: aratidgr8 Date: Mon, 14 Oct 2024 15:12:04 +0530 Subject: [PATCH 38/68] Add condition to check solutions availability for My plugins & tools CTA on Store page --- build/index.asset.php | 2 +- src/components/YITHPlugins.js | 9 ++++++--- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/build/index.asset.php b/build/index.asset.php index 11dd6d85..5db9b534 100644 --- a/build/index.asset.php +++ b/build/index.asset.php @@ -1 +1 @@ - array('lodash', 'moment', 'react', 'react-dom', 'wp-api-fetch', 'wp-data', 'wp-date', 'wp-dom-ready', 'wp-element', 'wp-i18n', 'wp-url'), 'version' => 'c47e1e6f7107db151554'); + array('lodash', 'moment', 'react', 'react-dom', 'wp-api-fetch', 'wp-data', 'wp-date', 'wp-dom-ready', 'wp-element', 'wp-i18n', 'wp-url'), 'version' => 'b7f9c7edcb583de38f54'); diff --git a/src/components/YITHPlugins.js b/src/components/YITHPlugins.js index 86d95f33..a1170383 100644 --- a/src/components/YITHPlugins.js +++ b/src/components/YITHPlugins.js @@ -17,6 +17,7 @@ export function YITHPlugins({ wpModules }) { const [pluginName, setPluginName] = useState(""); const [yithProducts, setYithProducts] = useState([]); let anyPluginActive = 0; + const hasSolution = NewfoldRuntime.hasCapability("hasSolution"); const [yithPluginsMap, setYithPluginsMap] = useState(new Map([ [ "f7834881-f5df-43ab-9c7e-c4e6969f5606", @@ -128,9 +129,11 @@ export function YITHPlugins({ wpModules }) { "Unlock the full power of your plan with access to a range of exclusive WooCommerce tools powered by \nYITH. Enhance your store and keep your customers coming back for more!", "wp-module-ecommerce" )} - + { + hasSolution && () + }
From 360761312519e6ca6760e3edc309d9763f206831 Mon Sep 17 00:00:00 2001 From: aratidgr8 Date: Tue, 15 Oct 2024 17:11:40 +0530 Subject: [PATCH 39/68] PRESS-2276 QA fixes --- build/index.asset.php | 2 +- src/components/WPSolutionsBanner.js | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/build/index.asset.php b/build/index.asset.php index 5db9b534..f145cb6c 100644 --- a/build/index.asset.php +++ b/build/index.asset.php @@ -1 +1 @@ - array('lodash', 'moment', 'react', 'react-dom', 'wp-api-fetch', 'wp-data', 'wp-date', 'wp-dom-ready', 'wp-element', 'wp-i18n', 'wp-url'), 'version' => 'b7f9c7edcb583de38f54'); + array('lodash', 'moment', 'react', 'react-dom', 'wp-api-fetch', 'wp-data', 'wp-date', 'wp-dom-ready', 'wp-element', 'wp-i18n', 'wp-url'), 'version' => '06ff3c08674be118f358'); diff --git a/src/components/WPSolutionsBanner.js b/src/components/WPSolutionsBanner.js index 33b2820a..8e4750b4 100644 --- a/src/components/WPSolutionsBanner.js +++ b/src/components/WPSolutionsBanner.js @@ -44,7 +44,7 @@ export function WPSolutionsBanner() { ( result ) => { setIsLoaded(true); setApiResponse(result) - setPurchasedSolution(result['solution']) + result['solution'] && setPurchasedSolution(result['solution']) setAvailableSolutions(result['solutions']) }, ( error ) => { @@ -138,7 +138,7 @@ export function WPSolutionsBanner() { }
- From 2a3090e8f23864e60e8cbc667f1dcef9808b8b14 Mon Sep 17 00:00:00 2001 From: aratidgr8 Date: Tue, 15 Oct 2024 20:56:20 +0530 Subject: [PATCH 40/68] Changes as per Micahs comment on PRESS0-2276 on 14th Oct --- build/index.asset.php | 2 +- includes/Data/Plugins.php | 16 ++--- src/components/WPSolutionsBanner.js | 103 ++++++++++++++++++++-------- src/constants.js | 77 +++++++++++++++------ 4 files changed, 139 insertions(+), 59 deletions(-) diff --git a/build/index.asset.php b/build/index.asset.php index f145cb6c..0b31ad3d 100644 --- a/build/index.asset.php +++ b/build/index.asset.php @@ -1 +1 @@ - array('lodash', 'moment', 'react', 'react-dom', 'wp-api-fetch', 'wp-data', 'wp-date', 'wp-dom-ready', 'wp-element', 'wp-i18n', 'wp-url'), 'version' => '06ff3c08674be118f358'); + array('lodash', 'moment', 'react', 'react-dom', 'wp-api-fetch', 'wp-data', 'wp-date', 'wp-dom-ready', 'wp-element', 'wp-i18n', 'wp-url'), 'version' => '404a0a7b724d2f08f5e9'); diff --git a/includes/Data/Plugins.php b/includes/Data/Plugins.php index 7a3edc21..38410034 100644 --- a/includes/Data/Plugins.php +++ b/includes/Data/Plugins.php @@ -51,42 +51,42 @@ final class Plugins { //Search Engine Optimization 'wp-seo' => array( - 'url' => 'wp-admin/admin.php?page=wpseo_dashboard#top#first-time-configuration', + 'url' => 'admin.php?page=wpseo_dashboard#top#first-time-configuration', 'file' => 'wordpress-seo/wp-seo.php' ), //Offer Content Courses 'sensei-lms' => array( - 'url' => 'wp-admin/post-new.php?post_type=course', + 'url' => 'post-new.php?post_type=course', 'file' => 'sensei-lms/sensei-lms.php' ), //Add An Affiliate Program 'yith-woocommerce-affiliates' => array( - 'url' => 'wp-admin/admin.php?page=yith_wcaf_panel&tab=settings&sub_tab=settings-general', + 'url' => 'admin.php?page=yith_wcaf_panel&tab=settings&sub_tab=settings-general', 'file' => 'yith-woocommerce-affiliates-premium/init.php' ), //Setup Bookings 'yith-woocommerce-booking' => array( - 'url' => 'wp-admin/edit.php?post_type=yith_booking&yith-plugin-fw-panel-skip-redirect=1', + 'url' => 'edit.php?post_type=yith_booking&yith-plugin-fw-panel-skip-redirect=1', 'file' => 'yith-woocommerce-booking/init.php' ), //Setup A Loyalty Program 'yith-woocommerce-points-and-rewards' => array( - 'url' => 'wp-admin/admin.php?page=yith_woocommerce_points_and_rewards&tab=points&sub_tab=points-standard', + 'url' => 'admin.php?page=yith_woocommerce_points_and_rewards&tab=points&sub_tab=points-standard', 'file' => 'yith-woocommerce-points-and-rewards/init.php' ), //Setup WishList 'yith-woocommerce-wishlist' => array( - 'url' => 'wp-admin/admin.php?page=yith_wcwl_panel&tab=settings&sub_tab=settings-general', + 'url' => 'admin.php?page=yith_wcwl_panel&tab=settings&sub_tab=settings-general', 'file' => 'yith-woocommerce-wishlist/init.php' ), //Enable Product Reviews 'yith-woocommerce-advanced-reviews' => array( - 'url' => 'wp-admin/admin.php?page=yith_ywar_panel', + 'url' => 'admin.php?page=yith_ywar_panel', 'file' => 'yith-woocommerce-advanced-reviews/init.php' ), //Create a Sales Campaign 'yith-woocommerce-dynamic-pricing-and-discounts' => array( - 'url' => 'wp-admin/edit.php?post_type=ywdpd_discount&yith-plugin-fw-panel-skip-redirect=1', + 'url' => 'edit.php?post_type=ywdpd_discount&yith-plugin-fw-panel-skip-redirect=1', 'file' => 'yith-woocommerce-dynamic-pricing-and-discounts/init.php' ) ); diff --git a/src/components/WPSolutionsBanner.js b/src/components/WPSolutionsBanner.js index 8e4750b4..f0e3fc1a 100644 --- a/src/components/WPSolutionsBanner.js +++ b/src/components/WPSolutionsBanner.js @@ -100,39 +100,82 @@ export function WPSolutionsBanner() { { __(`${details['description']}`,"wp-module-ecommerce") }

{ + //For type plugin details.plsSlug !== "" ? - Object.entries(pluginActiveStatusArray).map(([slug, { status, url }]) => ( - details.plsSlug === slug ? - status === "active" ? - - : - status === "need_to_install" || "installing" ? - : null + + Object.entries(pluginActiveStatusArray).map(([slug, { status, url }]) => ( + details.plsSlug === slug ? + ( + //installed & active + status === "active" ? + ( + + ) + : + //installed but not active + status === "need_to_activate" ? + ( + + ) + : + //need to install + status === "need_to_install" ? + //premium + details.plsProviderName && details.plsSlug ? + ( + + ) + : + //free + details.download ? + ( + + ) : null + : + null + ) + : null + )) : - null - )) - : - + //For type not plugin + () + } +
) }) } diff --git a/src/constants.js b/src/constants.js index bf8fbfc6..2604d7f9 100644 --- a/src/constants.js +++ b/src/constants.js @@ -45,7 +45,7 @@ export const wonderCartPopularCampaignsList = [ } ]; -//TODO: To add storageKey & plsProviderName information for all plugins once it is available +//TODO: To add storageKey, plsProviderName, download, basename information for all plugins once it is available export const wpSolutionsPromotedPluginsList = [ { "WP_SOLUTION_CREATOR": [ @@ -53,19 +53,25 @@ export const wpSolutionsPromotedPluginsList = [ title: "WEBPAGE CREATION", description: "Build webpages fast with tailored block patterns and page templates included in your hosting package.", buttonText: "Add a Page to Your Site", - name: " ", - plsSlug: " ", - storageKey: " ", - plsProviderName: " " + name: "", + plsSlug: "", + storageKey: "", + plsProviderName: "", + download: null, + basename: "", + url: "post-new.php?post_type=page" }, { title: "SEARCH ENGINE OPTIMIZATION", description: "Start increasing your search result rankings today.", buttonText: "Improve Your Search Ranking", - name:"Yoast SEO", + name:"WordPress SEO", plsSlug: "wp-seo", storageKey: "", - plsProviderName: "" + plsProviderName: "yoast", + download: "https://downloads.wordpress.org/plugin/wordpress-seo.latest-stable.zip", + basename: "wordpress-seo/wp-seo.php", + url: "admin.php?page=wpseo_dashboard#top#first-time-configuration" }, { title: "OFFER CONTENT COURSES", @@ -74,7 +80,11 @@ export const wpSolutionsPromotedPluginsList = [ name: "", plsSlug: "sensei-lms", storageKey: "", - plsProviderName: "" + plsProviderName: "", + download: null, + basename: "sensei-lms/sensei-lms.php", + url: "post-new.php?post_type=course" + }, { title: "ADD AN AFFILIATE PROGRAM", @@ -83,7 +93,10 @@ export const wpSolutionsPromotedPluginsList = [ name: "Affiliate Programs", plsSlug: "yith-woocommerce-affiliates", storageKey: "", - plsProviderName: "yith" + plsProviderName: "yith", + download: null, + basename: "commerce-entitlement/commerce-entitlement.php", + url: "admin.php?page=yith_wcaf_panel&tab=settings&sub_tab=settings-general" } ], "WP_SOLUTION_SERVICE": [ @@ -94,16 +107,22 @@ export const wpSolutionsPromotedPluginsList = [ name: "", plsSlug: "yith-woocommerce-booking", storageKey: "", - plsProviderName: "yith" + plsProviderName: "yith", + download: null, + basename: "", + url: "edit.php?post_type=yith_booking&yith-plugin-fw-panel-skip-redirect=1" }, { title: "WEBPAGE CREATION", description: "Build webpages fast with tailored block patterns and page templates.", buttonText: "Add a Page to Your Site", - name: " ", - plsSlug: " ", - storageKey: " ", - plsProviderName: " " + name: "", + plsSlug: "", + storageKey: "", + plsProviderName: "", + download: null, + basename: "", + url: "post-new.php?post_type=page" }, { title: "SEARCH ENGINE OPTIMIZATION", @@ -112,7 +131,10 @@ export const wpSolutionsPromotedPluginsList = [ name: "Yoast SEO", plsSlug: "wp-seo", storageKey: "", - plsProviderName: "" + plsProviderName: "yoast", + download: "https://downloads.wordpress.org/plugin/wordpress-seo.latest-stable.zip", + basename: "wordpress-seo/wp-seo.php", + url: "admin.php?page=wpseo_dashboard#top#first-time-configuration" }, { title: "SETUP A LOYALTY PROGRAM", @@ -121,7 +143,10 @@ export const wpSolutionsPromotedPluginsList = [ name: "Bookings & Appointments", plsSlug: "yith-woocommerce-points-and-rewards", storageKey: "", - plsProviderName: "yith" + plsProviderName: "yith", + download: null, + basename: "", + url:"admin.php?page=yith_woocommerce_points_and_rewards&tab=points&sub_tab=points-standard" }, ], @@ -133,7 +158,10 @@ export const wpSolutionsPromotedPluginsList = [ name: "Wishlists", plsSlug: "yith-woocommerce-wishlist", storageKey: "", - plsProviderName: "yith" + plsProviderName: "yith", + download: null, + basename: "", + url: "admin.php?page=yith_wcwl_panel&tab=settings&sub_tab=settings-general" }, { title: "ENABLE PRODUCT REVIEWS", @@ -142,7 +170,10 @@ export const wpSolutionsPromotedPluginsList = [ name: "Advanced Reviews", plsSlug: "yith-woocommerce-advanced-reviews", storageKey: "", - plsProviderName: "yith" + plsProviderName: "yith", + download: null, + basename: "", + url: "admin.php?page=yith_ywar_panel" }, { title: "CREATE A SALES CAMPAIGN", @@ -151,7 +182,10 @@ export const wpSolutionsPromotedPluginsList = [ name: "SALES CAMPAIGN", plsSlug: "yith-woocommerce-dynamic-pricing-and-discounts", storageKey: "", - plsProviderName: "yith" + plsProviderName: "yith", + download: null, + basename: "", + url: "edit.php?post_type=ywdpd_discount&yith-plugin-fw-panel-skip-redirect=1" }, { title: "SEARCH ENGINE OPTIMIZATION", @@ -160,7 +194,10 @@ export const wpSolutionsPromotedPluginsList = [ name: "Yoast SEO", plsSlug: "wp-seo", storageKey: "", - plsProviderName: "" + plsProviderName: "yoast", + download: "https://downloads.wordpress.org/plugin/wordpress-seo.latest-stable.zip", + basename: "wordpress-seo/wp-seo.php", + url: "admin.php?page=wpseo_dashboard#top#first-time-configuration" }, ], From 8225de4ee22d041d0051ff009fbb7c3eb3c84498 Mon Sep 17 00:00:00 2001 From: Micah Wood Date: Wed, 16 Oct 2024 00:46:38 -0400 Subject: [PATCH 41/68] Prep for 1.4.0-beta.3 release --- bootstrap.php | 2 +- build/index.asset.php | 2 +- package-lock.json | 19 ++++++++++--------- package.json | 4 ++-- 4 files changed, 14 insertions(+), 13 deletions(-) diff --git a/bootstrap.php b/bootstrap.php index 509db550..ad0d8a39 100644 --- a/bootstrap.php +++ b/bootstrap.php @@ -5,7 +5,7 @@ use function NewfoldLabs\WP\ModuleLoader\register; -define( 'NFD_ECOMMERCE_MODULE_VERSION', '1.4.0-beta.2' ); +define( 'NFD_ECOMMERCE_MODULE_VERSION', '1.4.0-beta.3' ); if ( function_exists( 'is_admin' ) && is_admin() ) { $old_woocommerce_module_version = get_option( 'nfd_ecommerce_module_version' ); diff --git a/build/index.asset.php b/build/index.asset.php index 0b31ad3d..2d57bff2 100644 --- a/build/index.asset.php +++ b/build/index.asset.php @@ -1 +1 @@ - array('lodash', 'moment', 'react', 'react-dom', 'wp-api-fetch', 'wp-data', 'wp-date', 'wp-dom-ready', 'wp-element', 'wp-i18n', 'wp-url'), 'version' => '404a0a7b724d2f08f5e9'); + array('lodash', 'moment', 'react', 'react-dom', 'wp-api-fetch', 'wp-data', 'wp-date', 'wp-dom-ready', 'wp-element', 'wp-i18n', 'wp-url'), 'version' => '2e99252879dbc96cca15'); diff --git a/package-lock.json b/package-lock.json index 4cb51af6..cb28db37 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "@newfold-labs/wp-module-ecommerce", - "version": "1.4.0-beta.2", + "version": "1.4.0-beta.3", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "@newfold-labs/wp-module-ecommerce", - "version": "1.4.0-beta.2", + "version": "1.4.0-beta.3", "license": "GPL-2.0-or-later", "dependencies": { "@faizaanceg/pandora": "^1.1.1", @@ -7127,9 +7127,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001610", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001610.tgz", - "integrity": "sha512-QFutAY4NgaelojVMjY63o6XlZyORPaLfyMnsl3HgnWdJUcX6K0oaJymHjH8PT5Gk7sTm8rvC/c5COUQKXqmOMA==", + "version": "1.0.30001668", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001668.tgz", + "integrity": "sha512-nWLrdxqCdblixUO+27JtGJJE/txpJlyUy5YN1u53wLZkP0emYCo5zgS6QYft7VUYR42LGgi/S5hdLZTrnyIddw==", "dev": true, "funding": [ { @@ -7144,7 +7144,8 @@ "type": "github", "url": "https://github.com/sponsors/ai" } - ] + ], + "license": "CC-BY-4.0" }, "node_modules/capital-case": { "version": "1.0.4", @@ -26218,9 +26219,9 @@ } }, "caniuse-lite": { - "version": "1.0.30001610", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001610.tgz", - "integrity": "sha512-QFutAY4NgaelojVMjY63o6XlZyORPaLfyMnsl3HgnWdJUcX6K0oaJymHjH8PT5Gk7sTm8rvC/c5COUQKXqmOMA==", + "version": "1.0.30001668", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001668.tgz", + "integrity": "sha512-nWLrdxqCdblixUO+27JtGJJE/txpJlyUy5YN1u53wLZkP0emYCo5zgS6QYft7VUYR42LGgi/S5hdLZTrnyIddw==", "dev": true }, "capital-case": { diff --git a/package.json b/package.json index 62eb6cea..1354937c 100644 --- a/package.json +++ b/package.json @@ -2,7 +2,7 @@ "name": "@newfold-labs/wp-module-ecommerce", "description": "Brand Agnostic eCommerce Experience", "license": "GPL-2.0-or-later", - "version": "1.4.0-beta.2", + "version": "1.4.0-beta.3", "main": "build/index.js", "files": [ "build/", @@ -31,7 +31,7 @@ "@wordpress/element": "^5.32.0", "@wordpress/i18n": "^4.55.0", "classnames": "2.5.1", - "moment": "^2.29.4", + "moment": "^2.29.4", "swr": "2.1.5", "uuid": "^9.0.1" }, From 3671bcd266dc12b812cd7724d645ef3992237ac3 Mon Sep 17 00:00:00 2001 From: aratidgr8 Date: Wed, 16 Oct 2024 17:29:09 +0530 Subject: [PATCH 42/68] Fix react console warnings for Home page --- build/index.asset.php | 2 +- src/components/WPSolutionsBanner.js | 16 ++++++++++------ src/sdk/plugins.js | 2 +- 3 files changed, 12 insertions(+), 8 deletions(-) diff --git a/build/index.asset.php b/build/index.asset.php index 2d57bff2..95cef001 100644 --- a/build/index.asset.php +++ b/build/index.asset.php @@ -1 +1 @@ - array('lodash', 'moment', 'react', 'react-dom', 'wp-api-fetch', 'wp-data', 'wp-date', 'wp-dom-ready', 'wp-element', 'wp-i18n', 'wp-url'), 'version' => '2e99252879dbc96cca15'); + array('lodash', 'moment', 'react', 'react-dom', 'wp-api-fetch', 'wp-data', 'wp-date', 'wp-dom-ready', 'wp-element', 'wp-i18n', 'wp-url'), 'version' => 'fdecf6eb6c16f87153bc'); diff --git a/src/components/WPSolutionsBanner.js b/src/components/WPSolutionsBanner.js index f0e3fc1a..1b62ab9d 100644 --- a/src/components/WPSolutionsBanner.js +++ b/src/components/WPSolutionsBanner.js @@ -23,6 +23,7 @@ export function WPSolutionsBanner() { const [ availableSolutions, setAvailableSolutions] = useState([]); const [ pluginActiveStatusArray, setPluginActiveStatusArray] = useState([]); let currentSolution = []; + const hasSolution = NewfoldRuntime.hasCapability("hasSolution"); let premiumPluginStatus = useSWR( "nfd_slug_wonder_cart", @@ -82,7 +83,8 @@ export function WPSolutionsBanner() { wpSolutionsPromotedPluginsList[0]['WP_SOLUTION_SERVICE'] : wpSolutionsPromotedPluginsList[0]['WP_SOLUTION_COMMERCE']; let solutionsCards = Object.values(currentSolution); return( - + hasSolution && + ( { solutionsCards?.map((details, index) => { - return (
+ return (

{ __(`${details['title']}`,"wp-module-ecommerce") }

@@ -109,7 +111,7 @@ export function WPSolutionsBanner() { //installed & active status === "active" ? ( - @@ -118,7 +120,7 @@ export function WPSolutionsBanner() { //installed but not active status === "need_to_activate" ? ( - @@ -130,6 +132,7 @@ export function WPSolutionsBanner() { details.plsProviderName && details.plsSlug ? ( ) @@ -185,7 +189,7 @@ export function WPSolutionsBanner() { {__(`View all your plugins and tools`, "wp-module-ecommerce")} - + ) ) } diff --git a/src/sdk/plugins.js b/src/sdk/plugins.js index ecc1dbe4..07274d7d 100644 --- a/src/sdk/plugins.js +++ b/src/sdk/plugins.js @@ -9,7 +9,7 @@ const Endpoints = { PLUGIN_INSTALL: NewfoldRuntime.createApiUrl("/newfold-installer/v1/plugins/install"), }; -const INSTALL_TOKEN = NewfoldRuntime.ecommerce.install_token; +const INSTALL_TOKEN = NewfoldRuntime.ecommerce?.install_token; export const PluginsSdk = { queries: { From e490d1568868ad53cdbe2620f96a25109ea8870d Mon Sep 17 00:00:00 2001 From: aratidgr8 Date: Wed, 16 Oct 2024 19:17:28 +0530 Subject: [PATCH 43/68] Data attributes updated as discussed with Arun --- src/components/WPSolutionsBanner.js | 6 ++--- src/constants.js | 35 ++++++++++------------------- 2 files changed, 14 insertions(+), 27 deletions(-) diff --git a/src/components/WPSolutionsBanner.js b/src/components/WPSolutionsBanner.js index 1b62ab9d..699d156f 100644 --- a/src/components/WPSolutionsBanner.js +++ b/src/components/WPSolutionsBanner.js @@ -136,11 +136,10 @@ export function WPSolutionsBanner() { className="nfd-button nfd-button--primary nfd-mt-9 nfd-mt-auto nfd-self-start" as="button" data-nfd-installer-plugin-activate={true} - data-nfd-installer-plugin-slug={slug} - data-nfd-installer-plugin-provider={details.plsProviderName} + data-nfd-installer-pls-slug={slug} + data-nfd-installer-pls-provider={details.plsProviderName} data-nfd-installer-plugin-name={details.name} data-nfd-installer-plugin-url={url} - data-nfd-installer-plugin-storage-key={details.storageKey} isLoading={status==="installing"} > { __(`${details['buttonText']}`,"wp-module-ecommerce") } @@ -159,7 +158,6 @@ export function WPSolutionsBanner() { data-nfd-installer-plugin-name={details.name} data-nfd-installer-download-url={details.download} data-nfd-installer-plugin-url={url} - data-nfd-installer-plugin-storage-key={details.storageKey} isLoading={status==="installing"} > { __(`${details['buttonText']}`,"wp-module-ecommerce") } diff --git a/src/constants.js b/src/constants.js index 2604d7f9..fc1421de 100644 --- a/src/constants.js +++ b/src/constants.js @@ -54,8 +54,7 @@ export const wpSolutionsPromotedPluginsList = [ description: "Build webpages fast with tailored block patterns and page templates included in your hosting package.", buttonText: "Add a Page to Your Site", name: "", - plsSlug: "", - storageKey: "", + plsSlug: "", plsProviderName: "", download: null, basename: "", @@ -66,8 +65,7 @@ export const wpSolutionsPromotedPluginsList = [ description: "Start increasing your search result rankings today.", buttonText: "Improve Your Search Ranking", name:"WordPress SEO", - plsSlug: "wp-seo", - storageKey: "", + plsSlug: "wp-seo", plsProviderName: "yoast", download: "https://downloads.wordpress.org/plugin/wordpress-seo.latest-stable.zip", basename: "wordpress-seo/wp-seo.php", @@ -78,8 +76,7 @@ export const wpSolutionsPromotedPluginsList = [ description: "Create beautiful and engaging online courses, lessons, and quizzes.", buttonText: "Create a Course", name: "", - plsSlug: "sensei-lms", - storageKey: "", + plsSlug: "sensei-lms", plsProviderName: "", download: null, basename: "sensei-lms/sensei-lms.php", @@ -91,8 +88,7 @@ export const wpSolutionsPromotedPluginsList = [ description: "Grant your affiliates earnings each time someone purchases from their link.", buttonText: "Create an Affiliate Program", name: "Affiliate Programs", - plsSlug: "yith-woocommerce-affiliates", - storageKey: "", + plsSlug: "yith-woocommerce-affiliates", plsProviderName: "yith", download: null, basename: "commerce-entitlement/commerce-entitlement.php", @@ -105,8 +101,7 @@ export const wpSolutionsPromotedPluginsList = [ description: "Manage the renting or booking of services and items that you offer your customers.", buttonText: "Setup Bookings", name: "", - plsSlug: "yith-woocommerce-booking", - storageKey: "", + plsSlug: "yith-woocommerce-booking", plsProviderName: "yith", download: null, basename: "", @@ -117,8 +112,7 @@ export const wpSolutionsPromotedPluginsList = [ description: "Build webpages fast with tailored block patterns and page templates.", buttonText: "Add a Page to Your Site", name: "", - plsSlug: "", - storageKey: "", + plsSlug: "", plsProviderName: "", download: null, basename: "", @@ -129,8 +123,7 @@ export const wpSolutionsPromotedPluginsList = [ description: "Start increasing your search result rankings today.", buttonText: "Improve Your Search Ranking", name: "Yoast SEO", - plsSlug: "wp-seo", - storageKey: "", + plsSlug: "wp-seo", plsProviderName: "yoast", download: "https://downloads.wordpress.org/plugin/wordpress-seo.latest-stable.zip", basename: "wordpress-seo/wp-seo.php", @@ -141,8 +134,7 @@ export const wpSolutionsPromotedPluginsList = [ description: "Reward customer loyalty with an effective points program.", buttonText: "Configure Points & Rewards", name: "Bookings & Appointments", - plsSlug: "yith-woocommerce-points-and-rewards", - storageKey: "", + plsSlug: "yith-woocommerce-points-and-rewards", plsProviderName: "yith", download: null, basename: "", @@ -157,7 +149,7 @@ export const wpSolutionsPromotedPluginsList = [ buttonText: "Setup Wishilsts", name: "Wishlists", plsSlug: "yith-woocommerce-wishlist", - storageKey: "", + plsProviderName: "yith", download: null, basename: "", @@ -168,8 +160,7 @@ export const wpSolutionsPromotedPluginsList = [ description: "Get positive product reviews and use social proof to drive more sales.", buttonText: "Enable Product Reviews", name: "Advanced Reviews", - plsSlug: "yith-woocommerce-advanced-reviews", - storageKey: "", + plsSlug: "yith-woocommerce-advanced-reviews", plsProviderName: "yith", download: null, basename: "", @@ -180,8 +171,7 @@ export const wpSolutionsPromotedPluginsList = [ description: "Create custom upsell, cross-sell and other promotional campaigns to generate more sales.", buttonText: "Create a Campaign", name: "SALES CAMPAIGN", - plsSlug: "yith-woocommerce-dynamic-pricing-and-discounts", - storageKey: "", + plsSlug: "yith-woocommerce-dynamic-pricing-and-discounts", plsProviderName: "yith", download: null, basename: "", @@ -192,8 +182,7 @@ export const wpSolutionsPromotedPluginsList = [ description: "Start increasing your search result rankings today.", buttonText: "Improve Your Search Ranking", name: "Yoast SEO", - plsSlug: "wp-seo", - storageKey: "", + plsSlug: "wp-seo", plsProviderName: "yoast", download: "https://downloads.wordpress.org/plugin/wordpress-seo.latest-stable.zip", basename: "wordpress-seo/wp-seo.php", From a463e88d56dc378dd605828fe8f9de7401ab42ab Mon Sep 17 00:00:00 2001 From: aratidgr8 Date: Wed, 16 Oct 2024 20:07:04 +0530 Subject: [PATCH 44/68] Data attributes & values updated in constants & plugins.php files --- includes/Data/Plugins.php | 18 +++++++++--------- src/components/WPSolutionsBanner.js | 4 ++-- src/constants.js | 28 +++++++++++++--------------- 3 files changed, 24 insertions(+), 26 deletions(-) diff --git a/includes/Data/Plugins.php b/includes/Data/Plugins.php index 38410034..83b71a56 100644 --- a/includes/Data/Plugins.php +++ b/includes/Data/Plugins.php @@ -60,29 +60,29 @@ final class Plugins { 'file' => 'sensei-lms/sensei-lms.php' ), //Add An Affiliate Program - 'yith-woocommerce-affiliates' => array( + 'yith-woocommerce-affiliates-premium' => array( 'url' => 'admin.php?page=yith_wcaf_panel&tab=settings&sub_tab=settings-general', 'file' => 'yith-woocommerce-affiliates-premium/init.php' ), //Setup Bookings - 'yith-woocommerce-booking' => array( + 'yith-woocommerce-booking-premium' => array( 'url' => 'edit.php?post_type=yith_booking&yith-plugin-fw-panel-skip-redirect=1', - 'file' => 'yith-woocommerce-booking/init.php' + 'file' => 'yith-woocommerce-booking-premium/init.php' ), //Setup A Loyalty Program - 'yith-woocommerce-points-and-rewards' => array( + 'yith-woocommerce-points-and-rewards-premium' => array( 'url' => 'admin.php?page=yith_woocommerce_points_and_rewards&tab=points&sub_tab=points-standard', - 'file' => 'yith-woocommerce-points-and-rewards/init.php' + 'file' => 'yith-woocommerce-points-and-rewards-premium/init.php' ), //Setup WishList - 'yith-woocommerce-wishlist' => array( + 'yith-woocommerce-wishlist-premium' => array( 'url' => 'admin.php?page=yith_wcwl_panel&tab=settings&sub_tab=settings-general', - 'file' => 'yith-woocommerce-wishlist/init.php' + 'file' => 'yith-woocommerce-wishlist-premium/init.php' ), //Enable Product Reviews - 'yith-woocommerce-advanced-reviews' => array( + 'yith-woocommerce-advanced-reviews-premium' => array( 'url' => 'admin.php?page=yith_ywar_panel', - 'file' => 'yith-woocommerce-advanced-reviews/init.php' + 'file' => 'yith-woocommerce-advanced-reviews-premium/init.php' ), //Create a Sales Campaign 'yith-woocommerce-dynamic-pricing-and-discounts' => array( diff --git a/src/components/WPSolutionsBanner.js b/src/components/WPSolutionsBanner.js index 699d156f..a466e853 100644 --- a/src/components/WPSolutionsBanner.js +++ b/src/components/WPSolutionsBanner.js @@ -29,7 +29,7 @@ export function WPSolutionsBanner() { "nfd_slug_wonder_cart", () => PluginsSdk.queries - .status("nfd_slug_wonder_cart", "sensei-lms", "wp-seo", "yith-woocommerce-affiliates", "yith-woocommerce-booking", "yith-woocommerce-points-and-rewards", "yith-woocommerce-wishlist", "yith-woocommerce-advanced-reviews", "yith-woocommerce-dynamic-pricing-and-discounts") + .status("nfd_slug_wonder_cart", "sensei-lms", "wp-seo", "yith-woocommerce-affiliates-premium", "yith-woocommerce-booking-premium", "yith-woocommerce-points-and-rewards-premium", "yith-woocommerce-wishlist-premium", "yith-woocommerce-advanced-reviews-premium", "yith-woocommerce-dynamic-pricing-and-discounts") .then(res => { setPluginActiveStatusArray(res?.details) }), @@ -129,7 +129,7 @@ export function WPSolutionsBanner() { //need to install status === "need_to_install" ? //premium - details.plsProviderName && details.plsSlug ? + details.plsProviderName && details.plsSlug && !details.download ? (
From 292e5d3deefb79630f1f439ee0b96ce3702d22e5 Mon Sep 17 00:00:00 2001 From: Micah Wood Date: Thu, 17 Oct 2024 15:57:33 -0400 Subject: [PATCH 50/68] Coding standards --- src/components/NoExistingPlan.js | 195 ++++++++++++++++++------------- 1 file changed, 117 insertions(+), 78 deletions(-) diff --git a/src/components/NoExistingPlan.js b/src/components/NoExistingPlan.js index 8a2fe232..702eb68e 100644 --- a/src/components/NoExistingPlan.js +++ b/src/components/NoExistingPlan.js @@ -1,82 +1,121 @@ -import { Button } from "@newfold/ui-component-library"; -import { __ } from "@wordpress/i18n"; -import { ReactComponent as FiftyOff } from "../icons/fifty-off.svg"; -import { ReactComponent as GreenTick } from "../icons/green-tick.svg"; -import { Section } from "./Section"; +import { Button } from '@newfold/ui-component-library'; +import { __ } from '@wordpress/i18n'; +import { ReactComponent as FiftyOff } from '../icons/fifty-off.svg'; +import { ReactComponent as GreenTick } from '../icons/green-tick.svg'; +import { Section } from './Section'; +export function NoExistingPlan( props ) { + const { availableSolutions } = props; -export function NoExistingPlan(props){ - const { availableSolutions } = props; + availableSolutions?.sort( ( a, b ) => a.priority - b.priority ); - availableSolutions?.sort((a, b) => a.priority - b.priority); + const HtmlContent = ( { htmlString } ) => { + return
; + }; - const HtmlContent = ({ htmlString }) => { - return ( -
- ); - }; - - - return( - - - - { - availableSolutions?.map((solution) => { - return( -
- -

- { __(`${solution.name.toUpperCase()}`, "wp-module-ecommerce") } -

-
-

- {__(`${solution.description}`, "wp-module-ecommerce")} -

-

- {solution.price} - - {__("/mo", "wp-module-ecommerce")} - -
- - {__("Original price ", "wp-module-ecommerce")} - {solution.fullPrice} - {__("/mo", "wp-module-ecommerce")} - -

-
-
-
    - { - solution?.features.map((feat, index) => { - return( -
  • - - - - -
  • - ) - }) - } -
- -
-
- ) - }) - } -
-
- ) -} \ No newline at end of file + return ( + + + + { availableSolutions?.map( ( solution ) => { + return ( +
+ +

+ { __( + `${ solution.name.toUpperCase() }`, + 'wp-module-ecommerce' + ) } +

+
+

+ { __( + `${ solution.description }`, + 'wp-module-ecommerce' + ) } +

+

+ { solution.price } + + { __( '/mo', 'wp-module-ecommerce' ) } + +
+ + + { __( + 'Original price', + 'wp-module-ecommerce' + ) } + + + { solution.fullPrice } + + + { __( + '/mo', + 'wp-module-ecommerce' + ) } + + +

+
+
+
    + { solution?.features.map( + ( feat, index ) => { + return ( +
  • + + + + +
  • + ); + } + ) } +
+ +
+
+ ); + } ) } +
+
+ ); +} From db7095621cc83ae7c3b71a1c05370f5724a98f48 Mon Sep 17 00:00:00 2001 From: Evan Mullins Date: Thu, 17 Oct 2024 17:11:17 -0400 Subject: [PATCH 51/68] prep for beta 6 update version to 1.4.0-beta.6 and update build files --- bootstrap.php | 2 +- build/index.asset.php | 2 +- package-lock.json | 4 ++-- package.json | 2 +- 4 files changed, 5 insertions(+), 5 deletions(-) diff --git a/bootstrap.php b/bootstrap.php index 99f2d1f3..7da18755 100644 --- a/bootstrap.php +++ b/bootstrap.php @@ -5,7 +5,7 @@ use function NewfoldLabs\WP\ModuleLoader\register; -define( 'NFD_ECOMMERCE_MODULE_VERSION', '1.4.0-beta.5' ); +define( 'NFD_ECOMMERCE_MODULE_VERSION', '1.4.0-beta.6' ); if ( function_exists( 'is_admin' ) && is_admin() ) { $old_woocommerce_module_version = get_option( 'nfd_ecommerce_module_version' ); diff --git a/build/index.asset.php b/build/index.asset.php index e70bd916..ea2a42aa 100644 --- a/build/index.asset.php +++ b/build/index.asset.php @@ -1 +1 @@ - array('lodash', 'moment', 'react', 'react-dom', 'wp-api-fetch', 'wp-data', 'wp-date', 'wp-dom-ready', 'wp-element', 'wp-i18n', 'wp-url'), 'version' => 'b89582e5db2185567ce8'); + array('lodash', 'moment', 'react', 'react-dom', 'wp-api-fetch', 'wp-data', 'wp-date', 'wp-dom-ready', 'wp-element', 'wp-i18n', 'wp-url'), 'version' => 'fb65f819cfc42d4532da'); diff --git a/package-lock.json b/package-lock.json index 620710a2..13facf8b 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "@newfold-labs/wp-module-ecommerce", - "version": "1.4.0-beta.5", + "version": "1.4.0-beta.6", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "@newfold-labs/wp-module-ecommerce", - "version": "1.4.0-beta.5", + "version": "1.4.0-beta.6", "license": "GPL-2.0-or-later", "dependencies": { "@faizaanceg/pandora": "^1.1.1", diff --git a/package.json b/package.json index 13af8d1d..a7aa9799 100644 --- a/package.json +++ b/package.json @@ -2,7 +2,7 @@ "name": "@newfold-labs/wp-module-ecommerce", "description": "Brand Agnostic eCommerce Experience", "license": "GPL-2.0-or-later", - "version": "1.4.0-beta.5", + "version": "1.4.0-beta.6", "main": "build/index.js", "files": [ "build/", From 6fd43ae3082ab8508070f06b4dfb606ea5eed7ec Mon Sep 17 00:00:00 2001 From: Evan Mullins Date: Fri, 18 Oct 2024 15:45:53 -0400 Subject: [PATCH 52/68] fix ctbid attribute --- src/components/NoExistingPlan.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/components/NoExistingPlan.js b/src/components/NoExistingPlan.js index 702eb68e..5e8f82a9 100644 --- a/src/components/NoExistingPlan.js +++ b/src/components/NoExistingPlan.js @@ -103,7 +103,7 @@ export function NoExistingPlan( props ) { as="a" href={ solution.url } data-action="load-nfd-ctb" - data-ctb-id="{solution.ctbId}" + data-ctb-id={ solution.ctbId } className="nfd-button nfd-button--secondary nfd-self-end nfd-ml-auto" > { __( From cfbbf0d2f7f337f837074f118fd729e6919a39e4 Mon Sep 17 00:00:00 2001 From: Evan Mullins Date: Fri, 18 Oct 2024 15:46:12 -0400 Subject: [PATCH 53/68] bump to 1.4.0-beta.7 --- bootstrap.php | 2 +- package.json | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/bootstrap.php b/bootstrap.php index 7da18755..f15aded3 100644 --- a/bootstrap.php +++ b/bootstrap.php @@ -5,7 +5,7 @@ use function NewfoldLabs\WP\ModuleLoader\register; -define( 'NFD_ECOMMERCE_MODULE_VERSION', '1.4.0-beta.6' ); +define( 'NFD_ECOMMERCE_MODULE_VERSION', '1.4.0-beta.7' ); if ( function_exists( 'is_admin' ) && is_admin() ) { $old_woocommerce_module_version = get_option( 'nfd_ecommerce_module_version' ); diff --git a/package.json b/package.json index a7aa9799..d7e03b34 100644 --- a/package.json +++ b/package.json @@ -2,7 +2,7 @@ "name": "@newfold-labs/wp-module-ecommerce", "description": "Brand Agnostic eCommerce Experience", "license": "GPL-2.0-or-later", - "version": "1.4.0-beta.6", + "version": "1.4.0-beta.7", "main": "build/index.js", "files": [ "build/", From 6983a44b14ecc033cb67d7dd17a085be992534f0 Mon Sep 17 00:00:00 2001 From: Evan Mullins Date: Fri, 18 Oct 2024 16:12:09 -0400 Subject: [PATCH 54/68] update build file `npm run build` --- build/index.asset.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build/index.asset.php b/build/index.asset.php index ea2a42aa..3050e113 100644 --- a/build/index.asset.php +++ b/build/index.asset.php @@ -1 +1 @@ - array('lodash', 'moment', 'react', 'react-dom', 'wp-api-fetch', 'wp-data', 'wp-date', 'wp-dom-ready', 'wp-element', 'wp-i18n', 'wp-url'), 'version' => 'fb65f819cfc42d4532da'); + array('lodash', 'moment', 'react', 'react-dom', 'wp-api-fetch', 'wp-data', 'wp-date', 'wp-dom-ready', 'wp-element', 'wp-i18n', 'wp-url'), 'version' => '4f2a13062d5341748dcd'); From 704856f36240a2062784330447b826b1e40bc7f8 Mon Sep 17 00:00:00 2001 From: Ramya krishna Date: Mon, 21 Oct 2024 16:24:18 +0530 Subject: [PATCH 55/68] bug fixes --- src/components/WPSolutionsBanner.js | 4 ++-- src/constants.js | 10 +++++----- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/src/components/WPSolutionsBanner.js b/src/components/WPSolutionsBanner.js index a466e853..1fdc7229 100644 --- a/src/components/WPSolutionsBanner.js +++ b/src/components/WPSolutionsBanner.js @@ -94,7 +94,7 @@ export function WPSolutionsBanner() {
{ solutionsCards?.map((details, index) => { - return (
+ return (

{ __(`${details['title']}`,"wp-module-ecommerce") }

@@ -171,7 +171,7 @@ export function WPSolutionsBanner() { )) : //For type not plugin - () diff --git a/src/constants.js b/src/constants.js index 1af1d835..fca4b1dc 100644 --- a/src/constants.js +++ b/src/constants.js @@ -86,7 +86,7 @@ export const wpSolutionsPromotedPluginsList = [ description: "Grant your affiliates earnings each time someone purchases from their link.", buttonText: "Create an Affiliate Program", name: "Affiliate Programs", - plsSlug: "yith-woocommerce-affiliates-premium", + plsSlug: "yith-woocommerce-affiliates", plsProviderName: "yith", download: null, basename: "yith-woocommerce-affiliates-premium/init.php", @@ -99,7 +99,7 @@ export const wpSolutionsPromotedPluginsList = [ description: "Manage the renting or booking of services and items that you offer your customers.", buttonText: "Setup Bookings", name: "Bookings & Appointments", - plsSlug: "yith-woocommerce-booking-premium", + plsSlug: "yith-woocommerce-booking", plsProviderName: "yith", download: null, basename: "yith-woocommerce-booking-premium/init.php", @@ -132,7 +132,7 @@ export const wpSolutionsPromotedPluginsList = [ description: "Reward customer loyalty with an effective points program.", buttonText: "Configure Points & Rewards", name: "Loyalty Program", - plsSlug: "yith-woocommerce-points-and-rewards-premium", + plsSlug: "yith-woocommerce-points-and-rewards", plsProviderName: "yith", download: null, basename: "yith-woocommerce-points-and-rewards-premium/init.php", @@ -146,7 +146,7 @@ export const wpSolutionsPromotedPluginsList = [ description: "Let customers add products to lists and share them with family and friends.", buttonText: "Setup Wishilsts", name: "Wishlists", - plsSlug: "yith-woocommerce-wishlist-premium", + plsSlug: "yith-woocommerce-wishlist", plsProviderName: "yith", download: null, basename: "yith-woocommerce-wishlist-premium/init.php", @@ -157,7 +157,7 @@ export const wpSolutionsPromotedPluginsList = [ description: "Get positive product reviews and use social proof to drive more sales.", buttonText: "Enable Product Reviews", name: "Advanced Reviews", - plsSlug: "yith-woocommerce-advanced-reviews-premium", + plsSlug: "yith-woocommerce-advanced-reviews", plsProviderName: "yith", download: null, basename: "yith-woocommerce-advanced-reviews-premium/init.php", From cc394287941ad70a366dbc32353ff59b21528618 Mon Sep 17 00:00:00 2001 From: Evan Mullins Date: Mon, 21 Oct 2024 11:14:09 -0400 Subject: [PATCH 56/68] updates for 1.4.0-beta.8 release --- bootstrap.php | 2 +- build/index.asset.php | 2 +- package-lock.json | 4 ++-- package.json | 2 +- 4 files changed, 5 insertions(+), 5 deletions(-) diff --git a/bootstrap.php b/bootstrap.php index f15aded3..7a34378f 100644 --- a/bootstrap.php +++ b/bootstrap.php @@ -5,7 +5,7 @@ use function NewfoldLabs\WP\ModuleLoader\register; -define( 'NFD_ECOMMERCE_MODULE_VERSION', '1.4.0-beta.7' ); +define( 'NFD_ECOMMERCE_MODULE_VERSION', '1.4.0-beta.8' ); if ( function_exists( 'is_admin' ) && is_admin() ) { $old_woocommerce_module_version = get_option( 'nfd_ecommerce_module_version' ); diff --git a/build/index.asset.php b/build/index.asset.php index 3050e113..3273a35c 100644 --- a/build/index.asset.php +++ b/build/index.asset.php @@ -1 +1 @@ - array('lodash', 'moment', 'react', 'react-dom', 'wp-api-fetch', 'wp-data', 'wp-date', 'wp-dom-ready', 'wp-element', 'wp-i18n', 'wp-url'), 'version' => '4f2a13062d5341748dcd'); + array('lodash', 'moment', 'react', 'react-dom', 'wp-api-fetch', 'wp-data', 'wp-date', 'wp-dom-ready', 'wp-element', 'wp-i18n', 'wp-url'), 'version' => '94f4abfe8dc8e6c9707e'); diff --git a/package-lock.json b/package-lock.json index 13facf8b..923fbdb3 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "@newfold-labs/wp-module-ecommerce", - "version": "1.4.0-beta.6", + "version": "1.4.0-beta.8", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "@newfold-labs/wp-module-ecommerce", - "version": "1.4.0-beta.6", + "version": "1.4.0-beta.8", "license": "GPL-2.0-or-later", "dependencies": { "@faizaanceg/pandora": "^1.1.1", diff --git a/package.json b/package.json index d7e03b34..7befb609 100644 --- a/package.json +++ b/package.json @@ -2,7 +2,7 @@ "name": "@newfold-labs/wp-module-ecommerce", "description": "Brand Agnostic eCommerce Experience", "license": "GPL-2.0-or-later", - "version": "1.4.0-beta.7", + "version": "1.4.0-beta.8", "main": "build/index.js", "files": [ "build/", From 87fd86e11cdb70429dab1b3aa123e5f999fa6640 Mon Sep 17 00:00:00 2001 From: Micah Wood Date: Mon, 21 Oct 2024 22:01:10 -0400 Subject: [PATCH 57/68] Flip wide vs narrow cards on Commerce to match layout of other solutions --- src/constants.js | 37 ++++++++++++++++++------------------- 1 file changed, 18 insertions(+), 19 deletions(-) diff --git a/src/constants.js b/src/constants.js index fca4b1dc..89b0fc84 100644 --- a/src/constants.js +++ b/src/constants.js @@ -141,17 +141,6 @@ export const wpSolutionsPromotedPluginsList = [ ], "WP_SOLUTION_COMMERCE": [ - { - title: "SETUP WISHLISTS", - description: "Let customers add products to lists and share them with family and friends.", - buttonText: "Setup Wishilsts", - name: "Wishlists", - plsSlug: "yith-woocommerce-wishlist", - plsProviderName: "yith", - download: null, - basename: "yith-woocommerce-wishlist-premium/init.php", - url: "admin.php?page=yith_wcwl_panel&tab=settings&sub_tab=settings-general" - }, { title: "ENABLE PRODUCT REVIEWS", description: "Get positive product reviews and use social proof to drive more sales.", @@ -164,15 +153,15 @@ export const wpSolutionsPromotedPluginsList = [ url: "admin.php?page=yith_ywar_panel" }, { - title: "CREATE A SALES CAMPAIGN", - description: "Create custom upsell, cross-sell and other promotional campaigns to generate more sales.", - buttonText: "Create a Campaign", - name: "SALES CAMPAIGN", - plsSlug: "yith-woocommerce-dynamic-pricing-and-discounts", + title: "SETUP WISHLISTS", + description: "Let customers add products to lists and share them with family and friends.", + buttonText: "Setup Wishilsts", + name: "Wishlists", + plsSlug: "yith-woocommerce-wishlist", plsProviderName: "yith", download: null, - basename: "yith-woocommerce-dynamic-pricing-and-discounts/init.php", - url: "edit.php?post_type=ywdpd_discount&yith-plugin-fw-panel-skip-redirect=1" + basename: "yith-woocommerce-wishlist-premium/init.php", + url: "admin.php?page=yith_wcwl_panel&tab=settings&sub_tab=settings-general" }, { title: "SEARCH ENGINE OPTIMIZATION", @@ -185,7 +174,17 @@ export const wpSolutionsPromotedPluginsList = [ basename: "wordpress-seo/wp-seo.php", url: "admin.php?page=wpseo_dashboard#top#first-time-configuration" }, - + { + title: "CREATE A SALES CAMPAIGN", + description: "Create custom upsell, cross-sell and other promotional campaigns to generate more sales.", + buttonText: "Create a Campaign", + name: "SALES CAMPAIGN", + plsSlug: "yith-woocommerce-dynamic-pricing-and-discounts", + plsProviderName: "yith", + download: null, + basename: "yith-woocommerce-dynamic-pricing-and-discounts/init.php", + url: "edit.php?post_type=ywdpd_discount&yith-plugin-fw-panel-skip-redirect=1" + } ], } ] From c6d56ee521dd20feb59883fde64b0750699614d4 Mon Sep 17 00:00:00 2001 From: Micah Wood Date: Mon, 21 Oct 2024 22:01:37 -0400 Subject: [PATCH 58/68] Update card alignment and font size to match Figma --- src/components/WPSolutionsBanner.js | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/components/WPSolutionsBanner.js b/src/components/WPSolutionsBanner.js index 1fdc7229..ecce3704 100644 --- a/src/components/WPSolutionsBanner.js +++ b/src/components/WPSolutionsBanner.js @@ -91,14 +91,14 @@ export function WPSolutionsBanner() { secondaryAction={{title : __( `View all your plugins and tools`, "wp-module-ecommerce" ), className: false, onClick: routeChange }} /> -
+
{ solutionsCards?.map((details, index) => { - return (
+ return (

{ __(`${details['title']}`,"wp-module-ecommerce") }

-

+

{ __(`${details['description']}`,"wp-module-ecommerce") }

{ From 3b72c3127c6dd59142ef5f41f59311020c34f5c1 Mon Sep 17 00:00:00 2001 From: Micah Wood Date: Mon, 21 Oct 2024 22:01:42 -0400 Subject: [PATCH 59/68] Ran build --- build/index.asset.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build/index.asset.php b/build/index.asset.php index 3273a35c..13749327 100644 --- a/build/index.asset.php +++ b/build/index.asset.php @@ -1 +1 @@ - array('lodash', 'moment', 'react', 'react-dom', 'wp-api-fetch', 'wp-data', 'wp-date', 'wp-dom-ready', 'wp-element', 'wp-i18n', 'wp-url'), 'version' => '94f4abfe8dc8e6c9707e'); + array('lodash', 'moment', 'react', 'react-dom', 'wp-api-fetch', 'wp-data', 'wp-date', 'wp-dom-ready', 'wp-element', 'wp-i18n', 'wp-url'), 'version' => '857fc5b5930751df9c71'); From f3a96bcd8916998b5dccf3a6373dce9f0e5d5ccf Mon Sep 17 00:00:00 2001 From: aratidgr8 Date: Tue, 22 Oct 2024 16:16:58 +0530 Subject: [PATCH 60/68] PRESS0-2231 products & services page fix --- build/index.asset.php | 2 +- src/configs/ProductsAndServices.config.js | 34 +++++++++++++++++++++-- 2 files changed, 32 insertions(+), 4 deletions(-) diff --git a/build/index.asset.php b/build/index.asset.php index 13749327..d0c3a48a 100644 --- a/build/index.asset.php +++ b/build/index.asset.php @@ -1 +1 @@ - array('lodash', 'moment', 'react', 'react-dom', 'wp-api-fetch', 'wp-data', 'wp-date', 'wp-dom-ready', 'wp-element', 'wp-i18n', 'wp-url'), 'version' => '857fc5b5930751df9c71'); + array('lodash', 'moment', 'react', 'react-dom', 'wp-api-fetch', 'wp-data', 'wp-date', 'wp-dom-ready', 'wp-element', 'wp-i18n', 'wp-url'), 'version' => '647c4c37a5948977f495'); diff --git a/src/configs/ProductsAndServices.config.js b/src/configs/ProductsAndServices.config.js index e0f23a13..7ecc53a5 100644 --- a/src/configs/ProductsAndServices.config.js +++ b/src/configs/ProductsAndServices.config.js @@ -21,6 +21,8 @@ import { wcPluginStatusParser, wcProductsParser, } from "./selectors"; +import apiFetch from '@wordpress/api-fetch'; + const getUrl = (href) => { let [page, qs] = href.split("?"); @@ -39,11 +41,37 @@ function defineFeatureState() { isUpsellNeeded: () => !(NewfoldRuntime.hasCapability("hasYithExtended") && NewfoldRuntime.hasCapability("hasSolution")), featureUrl: (data) => data?.products.length > 0 ? data.plugins?.pluginUrl : null, + purchasedSolution: () => getPurchasedSolution(), upsellOptions: (data) => data?.upsellOptions, }; } -export const ProductsAndServicesDefinition = (props) => ({ +async function getPurchasedSolution() { + const url = NewfoldRuntime.createApiUrl("/newfold-solutions/v1/entitlements") + let purchasedSolution; + + // apiFetch( { url: `${ url }` } ).then( + // ( result ) => { + // console.log(result['solution'], result, "result") + // purchasedSolution = result['solution'] + // }, + // ( error ) => console.log(error) + // ); + // console.log(purchasedSolution, "purchasedSolution") + // return purchasedSolution !== "WP_SOLUTION_COMMERCE"; + + + const res = await apiFetch( { url: `${ url }` } ) + + purchasedSolution = await res.json(); + + console.log( purchasedSolution, "*******") + + return purchasedSolution +} + +export const ProductsAndServicesDefinition = (props) => ( + { dataDependencies: { plugins: async () => PluginsSdk.queries.status( @@ -155,7 +183,7 @@ export const ProductsAndServicesDefinition = (props) => ({ }, { Card: FeatureCard, - shouldRender: () => NewfoldRuntime.hasCapability("hasSolution"), + shouldRender: (state) => NewfoldRuntime.hasCapability("hasSolution") && state.purchasedSolution, name: "booking", assets: ({ isActive }) => ({ Image: CalendarIcon, @@ -207,7 +235,7 @@ export const ProductsAndServicesDefinition = (props) => ({ }, { Card: FeatureCard, - shouldRender: () => NewfoldRuntime.hasCapability("hasSolution"), + shouldRender: (state) => NewfoldRuntime.hasCapability("hasSolution") && state.purchasedSolution, name: "gifts", assets: ({ isActive }) => ({ Image: GiftIcon, From f900ce865b4f9c6ab7b873f7205a88895f160410 Mon Sep 17 00:00:00 2001 From: Ramya krishna Date: Tue, 22 Oct 2024 16:43:33 +0530 Subject: [PATCH 61/68] hide bookking & giftcards if it is ecommecre solution --- src/configs/ProductsAndServices.config.js | 31 ++++++++--------------- 1 file changed, 11 insertions(+), 20 deletions(-) diff --git a/src/configs/ProductsAndServices.config.js b/src/configs/ProductsAndServices.config.js index 7ecc53a5..0bd9051e 100644 --- a/src/configs/ProductsAndServices.config.js +++ b/src/configs/ProductsAndServices.config.js @@ -41,33 +41,15 @@ function defineFeatureState() { isUpsellNeeded: () => !(NewfoldRuntime.hasCapability("hasYithExtended") && NewfoldRuntime.hasCapability("hasSolution")), featureUrl: (data) => data?.products.length > 0 ? data.plugins?.pluginUrl : null, - purchasedSolution: () => getPurchasedSolution(), + purchasedSolution: ( data ) => data.isEcomSolution !== 'WP_SOLUTION_COMMERCE', upsellOptions: (data) => data?.upsellOptions, }; } async function getPurchasedSolution() { const url = NewfoldRuntime.createApiUrl("/newfold-solutions/v1/entitlements") - let purchasedSolution; - - // apiFetch( { url: `${ url }` } ).then( - // ( result ) => { - // console.log(result['solution'], result, "result") - // purchasedSolution = result['solution'] - // }, - // ( error ) => console.log(error) - // ); - // console.log(purchasedSolution, "purchasedSolution") - // return purchasedSolution !== "WP_SOLUTION_COMMERCE"; - - const res = await apiFetch( { url: `${ url }` } ) - - purchasedSolution = await res.json(); - - console.log( purchasedSolution, "*******") - - return purchasedSolution + return res } export const ProductsAndServicesDefinition = (props) => ( @@ -81,6 +63,7 @@ export const ProductsAndServicesDefinition = (props) => ( ), products: WooCommerceSdk.products.list, upsellOptions: MarketplaceSdk.eCommerceOptions, + isEcomSolution: () => getPurchasedSolution() }, cards: [ { @@ -231,6 +214,10 @@ export const ProductsAndServicesDefinition = (props) => ( "YITH Booking and Appointment for WooCommerce" ), }, + { + key: "isEcomSolution", + selector: (data) => data?.solution + } ], }, { @@ -279,6 +266,10 @@ export const ProductsAndServicesDefinition = (props) => ( key: "upsellOptions", selector: findUpsellWithName("YITH WooCommerce Gift Cards"), }, + { + key: "isEcomSolution", + selector: (data) => data?.solution + } ], }, ], From 4ce65b4bc1e42152d7db812bf558000cf9c18833 Mon Sep 17 00:00:00 2001 From: aratidgr8 Date: Tue, 22 Oct 2024 16:46:38 +0530 Subject: [PATCH 62/68] Slugs corrected --- build/index.asset.php | 2 +- includes/Data/Plugins.php | 10 +++++----- src/components/WPSolutionsBanner.js | 10 +++++++++- 3 files changed, 15 insertions(+), 7 deletions(-) diff --git a/build/index.asset.php b/build/index.asset.php index d0c3a48a..ffa9a019 100644 --- a/build/index.asset.php +++ b/build/index.asset.php @@ -1 +1 @@ - array('lodash', 'moment', 'react', 'react-dom', 'wp-api-fetch', 'wp-data', 'wp-date', 'wp-dom-ready', 'wp-element', 'wp-i18n', 'wp-url'), 'version' => '647c4c37a5948977f495'); + array('lodash', 'moment', 'react', 'react-dom', 'wp-api-fetch', 'wp-data', 'wp-date', 'wp-dom-ready', 'wp-element', 'wp-i18n', 'wp-url'), 'version' => '701ea23537e638f89c97'); diff --git a/includes/Data/Plugins.php b/includes/Data/Plugins.php index 83b71a56..75483d10 100644 --- a/includes/Data/Plugins.php +++ b/includes/Data/Plugins.php @@ -60,27 +60,27 @@ final class Plugins { 'file' => 'sensei-lms/sensei-lms.php' ), //Add An Affiliate Program - 'yith-woocommerce-affiliates-premium' => array( + 'yith-woocommerce-affiliates' => array( 'url' => 'admin.php?page=yith_wcaf_panel&tab=settings&sub_tab=settings-general', 'file' => 'yith-woocommerce-affiliates-premium/init.php' ), //Setup Bookings - 'yith-woocommerce-booking-premium' => array( + 'yith-woocommerce-booking' => array( 'url' => 'edit.php?post_type=yith_booking&yith-plugin-fw-panel-skip-redirect=1', 'file' => 'yith-woocommerce-booking-premium/init.php' ), //Setup A Loyalty Program - 'yith-woocommerce-points-and-rewards-premium' => array( + 'yith-woocommerce-points-and-rewards' => array( 'url' => 'admin.php?page=yith_woocommerce_points_and_rewards&tab=points&sub_tab=points-standard', 'file' => 'yith-woocommerce-points-and-rewards-premium/init.php' ), //Setup WishList - 'yith-woocommerce-wishlist-premium' => array( + 'yith-woocommerce-wishlist' => array( 'url' => 'admin.php?page=yith_wcwl_panel&tab=settings&sub_tab=settings-general', 'file' => 'yith-woocommerce-wishlist-premium/init.php' ), //Enable Product Reviews - 'yith-woocommerce-advanced-reviews-premium' => array( + 'yith-woocommerce-advanced-reviews' => array( 'url' => 'admin.php?page=yith_ywar_panel', 'file' => 'yith-woocommerce-advanced-reviews-premium/init.php' ), diff --git a/src/components/WPSolutionsBanner.js b/src/components/WPSolutionsBanner.js index ecce3704..5d7db629 100644 --- a/src/components/WPSolutionsBanner.js +++ b/src/components/WPSolutionsBanner.js @@ -29,7 +29,15 @@ export function WPSolutionsBanner() { "nfd_slug_wonder_cart", () => PluginsSdk.queries - .status("nfd_slug_wonder_cart", "sensei-lms", "wp-seo", "yith-woocommerce-affiliates-premium", "yith-woocommerce-booking-premium", "yith-woocommerce-points-and-rewards-premium", "yith-woocommerce-wishlist-premium", "yith-woocommerce-advanced-reviews-premium", "yith-woocommerce-dynamic-pricing-and-discounts") + .status("nfd_slug_wonder_cart", + "sensei-lms", + "wp-seo", + "yith-woocommerce-affiliates", + "yith-woocommerce-booking", + "yith-woocommerce-points-and-rewards", + "yith-woocommerce-wishlist", + "yith-woocommerce-advanced-reviews", + "yith-woocommerce-dynamic-pricing-and-discounts") .then(res => { setPluginActiveStatusArray(res?.details) }), From d9ab6105a44dc5fa15b04b95c1931052cfb9e50d Mon Sep 17 00:00:00 2001 From: aratidgr8 Date: Tue, 22 Oct 2024 16:50:28 +0530 Subject: [PATCH 63/68] index.asset.php updated --- build/index.asset.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build/index.asset.php b/build/index.asset.php index ffa9a019..4dbc3753 100644 --- a/build/index.asset.php +++ b/build/index.asset.php @@ -1 +1 @@ - array('lodash', 'moment', 'react', 'react-dom', 'wp-api-fetch', 'wp-data', 'wp-date', 'wp-dom-ready', 'wp-element', 'wp-i18n', 'wp-url'), 'version' => '701ea23537e638f89c97'); + array('lodash', 'moment', 'react', 'react-dom', 'wp-api-fetch', 'wp-data', 'wp-date', 'wp-dom-ready', 'wp-element', 'wp-i18n', 'wp-url'), 'version' => '98a730d52c375a0c63c5'); From 3015ec112be362f9f713a8b2b9193eda0c3f0c14 Mon Sep 17 00:00:00 2001 From: aratidgr8 Date: Tue, 22 Oct 2024 17:09:03 +0530 Subject: [PATCH 64/68] Display logic for no existing plan section --- build/index.asset.php | 2 +- src/components/WPSolutionsBanner.js | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/build/index.asset.php b/build/index.asset.php index 4dbc3753..6aeb8a54 100644 --- a/build/index.asset.php +++ b/build/index.asset.php @@ -1 +1 @@ - array('lodash', 'moment', 'react', 'react-dom', 'wp-api-fetch', 'wp-data', 'wp-date', 'wp-dom-ready', 'wp-element', 'wp-i18n', 'wp-url'), 'version' => '98a730d52c375a0c63c5'); + array('lodash', 'moment', 'react', 'react-dom', 'wp-api-fetch', 'wp-data', 'wp-date', 'wp-dom-ready', 'wp-element', 'wp-i18n', 'wp-url'), 'version' => '0007a755d8c8e72a7585'); diff --git a/src/components/WPSolutionsBanner.js b/src/components/WPSolutionsBanner.js index 5d7db629..b191837c 100644 --- a/src/components/WPSolutionsBanner.js +++ b/src/components/WPSolutionsBanner.js @@ -81,7 +81,7 @@ export function WPSolutionsBanner() { ); } else if (apiResponse) { - if (purchasedSolution === null) { + if (purchasedSolution === null || !hasSolution) { return (); } else{ From bd238f648d5d670eeca7fd2eaaea53fc2c407771 Mon Sep 17 00:00:00 2001 From: aratidgr8 Date: Tue, 22 Oct 2024 17:33:33 +0530 Subject: [PATCH 65/68] update constants.js as per entitlement API --- build/index.asset.php | 2 +- src/components/WPSolutionsBanner.js | 12 ++--- src/constants.js | 77 ++++++++++++++++++++--------- 3 files changed, 60 insertions(+), 31 deletions(-) diff --git a/build/index.asset.php b/build/index.asset.php index 6aeb8a54..db61cd37 100644 --- a/build/index.asset.php +++ b/build/index.asset.php @@ -1 +1 @@ - array('lodash', 'moment', 'react', 'react-dom', 'wp-api-fetch', 'wp-data', 'wp-date', 'wp-dom-ready', 'wp-element', 'wp-i18n', 'wp-url'), 'version' => '0007a755d8c8e72a7585'); + array('lodash', 'moment', 'react', 'react-dom', 'wp-api-fetch', 'wp-data', 'wp-date', 'wp-dom-ready', 'wp-element', 'wp-i18n', 'wp-url'), 'version' => 'e024a46ed8e782d45697'); diff --git a/src/components/WPSolutionsBanner.js b/src/components/WPSolutionsBanner.js index b191837c..44b9a90d 100644 --- a/src/components/WPSolutionsBanner.js +++ b/src/components/WPSolutionsBanner.js @@ -120,7 +120,7 @@ export function WPSolutionsBanner() { status === "active" ? ( ) @@ -129,7 +129,7 @@ export function WPSolutionsBanner() { status === "need_to_activate" ? ( ) @@ -150,7 +150,7 @@ export function WPSolutionsBanner() { data-nfd-installer-plugin-url={url} isLoading={status==="installing"} > - { __(`${details['buttonText']}`,"wp-module-ecommerce") } + { __(`${details['cta']['text']}`,"wp-module-ecommerce") } ) @@ -168,7 +168,7 @@ export function WPSolutionsBanner() { data-nfd-installer-plugin-url={url} isLoading={status==="installing"} > - { __(`${details['buttonText']}`,"wp-module-ecommerce") } + { __(`${details['cta']['text']}`,"wp-module-ecommerce") } ) : null @@ -179,8 +179,8 @@ export function WPSolutionsBanner() { )) : //For type not plugin - () diff --git a/src/constants.js b/src/constants.js index 89b0fc84..927c4ff3 100644 --- a/src/constants.js +++ b/src/constants.js @@ -51,92 +51,112 @@ export const wpSolutionsPromotedPluginsList = [ { title: "WEBPAGE CREATION", description: "Build webpages fast with tailored block patterns and page templates included in your hosting package.", - buttonText: "Add a Page to Your Site", name: "Webpage Creation", plsSlug: "", plsProviderName: "", download: null, basename: "", - url: "post-new.php?post_type=page" + cta: { + "text": "Add a Page to Your Site", + "url" : "post-new.php?post_type=page" + } + }, { title: "SEARCH ENGINE OPTIMIZATION", description: "Start increasing your search result rankings today.", - buttonText: "Improve Your Search Ranking", name:"Yoast SEO", plsSlug: "wp-seo", plsProviderName: "yoast", download: "https://downloads.wordpress.org/plugin/wordpress-seo.latest-stable.zip", basename: "wordpress-seo/wp-seo.php", - url: "admin.php?page=wpseo_dashboard#top#first-time-configuration" + cta: { + "text": "Improve Your Search Ranking", + "url": "admin.php?page=wpseo_dashboard#top#first-time-configuration" + }, }, { title: "OFFER CONTENT COURSES", description: "Create beautiful and engaging online courses, lessons, and quizzes.", - buttonText: "Create a Course", name: "Offer Content Courses", plsSlug: "sensei-lms", plsProviderName: "automattic", download: "https://downloads.wordpress.org/plugin/sensei-lms.latest-stable.zip", basename: "sensei-lms/sensei-lms.php", - url: "post-new.php?post_type=course" + cta: { + "text": "Create a Course", + "url": "post-new.php?post_type=course" + }, }, { title: "ADD AN AFFILIATE PROGRAM", description: "Grant your affiliates earnings each time someone purchases from their link.", - buttonText: "Create an Affiliate Program", name: "Affiliate Programs", plsSlug: "yith-woocommerce-affiliates", plsProviderName: "yith", download: null, basename: "yith-woocommerce-affiliates-premium/init.php", - url: "admin.php?page=yith_wcaf_panel&tab=settings&sub_tab=settings-general" + cta: { + "text": "Create an Affiliate Program", + "url": "admin.php?page=yith_wcaf_panel&tab=settings&sub_tab=settings-general" + } } ], "WP_SOLUTION_SERVICE": [ { title: "SETUP BOOKINGS", description: "Manage the renting or booking of services and items that you offer your customers.", - buttonText: "Setup Bookings", name: "Bookings & Appointments", plsSlug: "yith-woocommerce-booking", plsProviderName: "yith", download: null, basename: "yith-woocommerce-booking-premium/init.php", - url: "edit.php?post_type=yith_booking&yith-plugin-fw-panel-skip-redirect=1" + cta: { + "text": "Setup Bookings", + "url": "edit.php?post_type=yith_booking&yith-plugin-fw-panel-skip-redirect=1" + } + }, { title: "WEBPAGE CREATION", description: "Build webpages fast with tailored block patterns and page templates.", - buttonText: "Add a Page to Your Site", name: "Webpage Creation", plsSlug: "", plsProviderName: "", download: null, basename: "", - url: "post-new.php?post_type=page" + cta: { + "text": "Add a Page to Your Site", + "url": "post-new.php?post_type=page" + } + }, { title: "SEARCH ENGINE OPTIMIZATION", description: "Start increasing your search result rankings today.", - buttonText: "Improve Your Search Ranking", name: "Yoast SEO", plsSlug: "wp-seo", plsProviderName: "yoast", download: "https://downloads.wordpress.org/plugin/wordpress-seo.latest-stable.zip", basename: "wordpress-seo/wp-seo.php", - url: "admin.php?page=wpseo_dashboard#top#first-time-configuration" + cta: { + "text": "Improve Your Search Ranking", + "url": "admin.php?page=wpseo_dashboard#top#first-time-configuration" + } + }, { title: "SETUP A LOYALTY PROGRAM", description: "Reward customer loyalty with an effective points program.", - buttonText: "Configure Points & Rewards", name: "Loyalty Program", plsSlug: "yith-woocommerce-points-and-rewards", plsProviderName: "yith", download: null, basename: "yith-woocommerce-points-and-rewards-premium/init.php", - url:"admin.php?page=yith_woocommerce_points_and_rewards&tab=points&sub_tab=points-standard" + cta: { + "text": "Configure Points & Rewards", + "url":"admin.php?page=yith_woocommerce_points_and_rewards&tab=points&sub_tab=points-standard" + } }, ], @@ -144,46 +164,55 @@ export const wpSolutionsPromotedPluginsList = [ { title: "ENABLE PRODUCT REVIEWS", description: "Get positive product reviews and use social proof to drive more sales.", - buttonText: "Enable Product Reviews", name: "Advanced Reviews", plsSlug: "yith-woocommerce-advanced-reviews", plsProviderName: "yith", download: null, basename: "yith-woocommerce-advanced-reviews-premium/init.php", - url: "admin.php?page=yith_ywar_panel" + cta: { + "text": "Enable Product Reviews", + "url": "admin.php?page=yith_ywar_panel" + } + }, { title: "SETUP WISHLISTS", description: "Let customers add products to lists and share them with family and friends.", - buttonText: "Setup Wishilsts", name: "Wishlists", plsSlug: "yith-woocommerce-wishlist", plsProviderName: "yith", download: null, basename: "yith-woocommerce-wishlist-premium/init.php", - url: "admin.php?page=yith_wcwl_panel&tab=settings&sub_tab=settings-general" + cta: { + "text": "Setup Wishilsts", + "url": "admin.php?page=yith_wcwl_panel&tab=settings&sub_tab=settings-general" + } }, { title: "SEARCH ENGINE OPTIMIZATION", description: "Start increasing your search result rankings today.", - buttonText: "Improve Your Search Ranking", name: "Yoast SEO", plsSlug: "wp-seo", plsProviderName: "yoast", download: "https://downloads.wordpress.org/plugin/wordpress-seo.latest-stable.zip", basename: "wordpress-seo/wp-seo.php", - url: "admin.php?page=wpseo_dashboard#top#first-time-configuration" + cta: { + "text": "Improve Your Search Ranking", + "url": "admin.php?page=wpseo_dashboard#top#first-time-configuration" + }, }, { title: "CREATE A SALES CAMPAIGN", description: "Create custom upsell, cross-sell and other promotional campaigns to generate more sales.", - buttonText: "Create a Campaign", name: "SALES CAMPAIGN", plsSlug: "yith-woocommerce-dynamic-pricing-and-discounts", plsProviderName: "yith", download: null, basename: "yith-woocommerce-dynamic-pricing-and-discounts/init.php", - url: "edit.php?post_type=ywdpd_discount&yith-plugin-fw-panel-skip-redirect=1" + cta: { + "text": "Create a Campaign", + "url": "edit.php?post_type=ywdpd_discount&yith-plugin-fw-panel-skip-redirect=1" + } } ], } From 2d4cd3f5bd70e5e91504a17813db50426b98714c Mon Sep 17 00:00:00 2001 From: Ramya krishna Date: Tue, 22 Oct 2024 18:04:38 +0530 Subject: [PATCH 66/68] added data attributes --- build/index.asset.php | 2 +- src/components/WPSolutionsBanner.js | 10 +++++++++- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/build/index.asset.php b/build/index.asset.php index db61cd37..eb55938c 100644 --- a/build/index.asset.php +++ b/build/index.asset.php @@ -1 +1 @@ - array('lodash', 'moment', 'react', 'react-dom', 'wp-api-fetch', 'wp-data', 'wp-date', 'wp-dom-ready', 'wp-element', 'wp-i18n', 'wp-url'), 'version' => 'e024a46ed8e782d45697'); + array('lodash', 'moment', 'react', 'react-dom', 'wp-api-fetch', 'wp-data', 'wp-date', 'wp-dom-ready', 'wp-element', 'wp-i18n', 'wp-url'), 'version' => '06f7324e4a155909e837'); diff --git a/src/components/WPSolutionsBanner.js b/src/components/WPSolutionsBanner.js index 44b9a90d..17a7215f 100644 --- a/src/components/WPSolutionsBanner.js +++ b/src/components/WPSolutionsBanner.js @@ -128,7 +128,15 @@ export function WPSolutionsBanner() { //installed but not active status === "need_to_activate" ? ( - From 83defdb714be12d5e24e05d8d63014100f1e8212 Mon Sep 17 00:00:00 2001 From: aratidgr8 Date: Tue, 22 Oct 2024 18:08:04 +0530 Subject: [PATCH 67/68] Version Upgrade to 1.4.0-beta.9 --- bootstrap.php | 2 +- package-lock.json | 4 ++-- package.json | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/bootstrap.php b/bootstrap.php index 7a34378f..9c0cbe7b 100644 --- a/bootstrap.php +++ b/bootstrap.php @@ -5,7 +5,7 @@ use function NewfoldLabs\WP\ModuleLoader\register; -define( 'NFD_ECOMMERCE_MODULE_VERSION', '1.4.0-beta.8' ); +define( 'NFD_ECOMMERCE_MODULE_VERSION', '1.4.0-beta.9' ); if ( function_exists( 'is_admin' ) && is_admin() ) { $old_woocommerce_module_version = get_option( 'nfd_ecommerce_module_version' ); diff --git a/package-lock.json b/package-lock.json index 923fbdb3..e10e65d9 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "@newfold-labs/wp-module-ecommerce", - "version": "1.4.0-beta.8", + "version": "1.4.0-beta.9", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "@newfold-labs/wp-module-ecommerce", - "version": "1.4.0-beta.8", + "version": "1.4.0-beta.9", "license": "GPL-2.0-or-later", "dependencies": { "@faizaanceg/pandora": "^1.1.1", diff --git a/package.json b/package.json index 7befb609..ce3a7fea 100644 --- a/package.json +++ b/package.json @@ -2,7 +2,7 @@ "name": "@newfold-labs/wp-module-ecommerce", "description": "Brand Agnostic eCommerce Experience", "license": "GPL-2.0-or-later", - "version": "1.4.0-beta.8", + "version": "1.4.0-beta.9", "main": "build/index.js", "files": [ "build/", From 125efbf26f23da90525467dc62aa893cb61482fc Mon Sep 17 00:00:00 2001 From: aratidgr8 Date: Wed, 23 Oct 2024 15:20:13 +0530 Subject: [PATCH 68/68] Version Upgrade to 1.4.0 --- bootstrap.php | 2 +- composer.lock | 554 ++++++++++++++++++++++++++-------------------- package-lock.json | 4 +- package.json | 2 +- 4 files changed, 313 insertions(+), 249 deletions(-) diff --git a/bootstrap.php b/bootstrap.php index 9c0cbe7b..5fd69a4f 100644 --- a/bootstrap.php +++ b/bootstrap.php @@ -5,7 +5,7 @@ use function NewfoldLabs\WP\ModuleLoader\register; -define( 'NFD_ECOMMERCE_MODULE_VERSION', '1.4.0-beta.9' ); +define( 'NFD_ECOMMERCE_MODULE_VERSION', '1.4.0' ); if ( function_exists( 'is_admin' ) && is_admin() ) { $old_woocommerce_module_version = get_option( 'nfd_ecommerce_module_version' ); diff --git a/composer.lock b/composer.lock index 503b13f3..cfab1f84 100644 --- a/composer.lock +++ b/composer.lock @@ -192,16 +192,16 @@ }, { "name": "newfold-labs/wp-module-ai", - "version": "1.1.11", + "version": "1.1.12", "source": { "type": "git", "url": "https://github.com/newfold-labs/wp-module-ai.git", - "reference": "523fe373a723b2336e3043cbcaeac058734ed761" + "reference": "3836a576e83e068b53de1d850bcb60aac471656d" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/newfold-labs/wp-module-ai/zipball/523fe373a723b2336e3043cbcaeac058734ed761", - "reference": "523fe373a723b2336e3043cbcaeac058734ed761", + "url": "https://api.github.com/repos/newfold-labs/wp-module-ai/zipball/3836a576e83e068b53de1d850bcb60aac471656d", + "reference": "3836a576e83e068b53de1d850bcb60aac471656d", "shasum": "" }, "require": { @@ -231,10 +231,10 @@ ], "description": "A module for providing artificial intelligence capabilities.", "support": { - "source": "https://github.com/newfold-labs/wp-module-ai/tree/1.1.11", + "source": "https://github.com/newfold-labs/wp-module-ai/tree/1.1.12", "issues": "https://github.com/newfold-labs/wp-module-ai/issues" }, - "time": "2024-08-28T15:18:10+00:00" + "time": "2024-09-19T07:47:50+00:00" }, { "name": "newfold-labs/wp-module-coming-soon", @@ -346,20 +346,21 @@ }, { "name": "newfold-labs/wp-module-data", - "version": "2.6.3", + "version": "2.6.5", "source": { "type": "git", "url": "https://github.com/newfold-labs/wp-module-data.git", - "reference": "f98dfabe6a4cb10aec6dcd6e81fc7d269238e9a4" + "reference": "002cc3da70565af1708408f7d7604396d2af55e3" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/newfold-labs/wp-module-data/zipball/f98dfabe6a4cb10aec6dcd6e81fc7d269238e9a4", - "reference": "f98dfabe6a4cb10aec6dcd6e81fc7d269238e9a4", + "url": "https://api.github.com/repos/newfold-labs/wp-module-data/zipball/002cc3da70565af1708408f7d7604396d2af55e3", + "reference": "002cc3da70565af1708408f7d7604396d2af55e3", "shasum": "" }, "require": { "ext-json": "*", + "newfold-labs/wp-module-context": "^1.0", "newfold-labs/wp-module-loader": "^1.0.10", "wp-forge/helpers": "^2.0", "wp-forge/wp-query-builder": "^1.0.4", @@ -437,10 +438,10 @@ ], "description": "Newfold Data Module", "support": { - "source": "https://github.com/newfold-labs/wp-module-data/tree/2.6.3", + "source": "https://github.com/newfold-labs/wp-module-data/tree/2.6.5", "issues": "https://github.com/newfold-labs/wp-module-data/issues" }, - "time": "2024-08-30T19:51:58+00:00" + "time": "2024-10-18T19:30:28+00:00" }, { "name": "newfold-labs/wp-module-features", @@ -540,20 +541,24 @@ }, { "name": "newfold-labs/wp-module-installer", - "version": "1.1.5", + "version": "1.2.0", "source": { "type": "git", "url": "https://github.com/newfold-labs/wp-module-installer.git", - "reference": "b418c3aa8c192e805930abd9871b301d16671ba8" + "reference": "1d7cb9d6f35107f409bb38e31c469c8a87ccd55b" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/newfold-labs/wp-module-installer/zipball/b418c3aa8c192e805930abd9871b301d16671ba8", - "reference": "b418c3aa8c192e805930abd9871b301d16671ba8", + "url": "https://api.github.com/repos/newfold-labs/wp-module-installer/zipball/1d7cb9d6f35107f409bb38e31c469c8a87ccd55b", + "reference": "1d7cb9d6f35107f409bb38e31c469c8a87ccd55b", "shasum": "" }, + "require": { + "newfold-labs/wp-module-pls": "^1.0.0" + }, "require-dev": { - "newfold-labs/wp-php-standards": "^1.2" + "newfold-labs/wp-php-standards": "^1.2", + "wp-cli/wp-cli": "^2.11" }, "type": "library", "autoload": { @@ -575,10 +580,10 @@ ], "description": "An installer for WordPress plugins and themes.", "support": { - "source": "https://github.com/newfold-labs/wp-module-installer/tree/1.1.5", + "source": "https://github.com/newfold-labs/wp-module-installer/tree/1.2.0", "issues": "https://github.com/newfold-labs/wp-module-installer/issues" }, - "time": "2024-08-28T06:37:38+00:00" + "time": "2024-10-23T09:22:01+00:00" }, { "name": "newfold-labs/wp-module-loader", @@ -628,27 +633,27 @@ }, { "name": "newfold-labs/wp-module-onboarding-data", - "version": "1.1.17", + "version": "1.2.0", "source": { "type": "git", "url": "https://github.com/newfold-labs/wp-module-onboarding-data.git", - "reference": "1c60007a352cb18511536b8b58c3b9dc65821f73" + "reference": "0667cf1768dee0baabe785145ba64d97e718a0b5" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/newfold-labs/wp-module-onboarding-data/zipball/1c60007a352cb18511536b8b58c3b9dc65821f73", - "reference": "1c60007a352cb18511536b8b58c3b9dc65821f73", + "url": "https://api.github.com/repos/newfold-labs/wp-module-onboarding-data/zipball/0667cf1768dee0baabe785145ba64d97e718a0b5", + "reference": "0667cf1768dee0baabe785145ba64d97e718a0b5", "shasum": "" }, "require": { "mustache/mustache": "^2.14", "newfold-labs/wp-module-ai": "^1.1", "newfold-labs/wp-module-coming-soon": "^1.2", - "newfold-labs/wp-module-data": "^2.0", + "newfold-labs/wp-module-data": "^2.6", "newfold-labs/wp-module-install-checker": "^1.0", - "newfold-labs/wp-module-installer": "^1.1", - "newfold-labs/wp-module-patterns": "^2.0", - "newfold-labs/wp-module-performance": "^1.4", + "newfold-labs/wp-module-installer": "^1.2.0-beta", + "newfold-labs/wp-module-patterns": "^2.5", + "newfold-labs/wp-module-performance": "^2.0", "newfold-labs/wp-module-survey": "^1.0", "wp-forge/wp-upgrade-handler": "^1.0" }, @@ -673,28 +678,29 @@ ], "description": "A non-toggleable module containing a standardized interface for interacting with Onboarding data.", "support": { - "source": "https://github.com/newfold-labs/wp-module-onboarding-data/tree/1.1.17", + "source": "https://github.com/newfold-labs/wp-module-onboarding-data/tree/1.2.0", "issues": "https://github.com/newfold-labs/wp-module-onboarding-data/issues" }, - "time": "2024-09-11T05:58:44+00:00" + "time": "2024-10-09T09:26:26+00:00" }, { "name": "newfold-labs/wp-module-patterns", - "version": "2.4.1", + "version": "2.6.0", "source": { "type": "git", "url": "https://github.com/newfold-labs/wp-module-patterns.git", - "reference": "2d8bb11201123adc6505afd89af6494490f929ed" + "reference": "df06479f0715d40e4aadfc299e77c9062c9165db" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/newfold-labs/wp-module-patterns/zipball/2d8bb11201123adc6505afd89af6494490f929ed", - "reference": "2d8bb11201123adc6505afd89af6494490f929ed", + "url": "https://api.github.com/repos/newfold-labs/wp-module-patterns/zipball/df06479f0715d40e4aadfc299e77c9062c9165db", + "reference": "df06479f0715d40e4aadfc299e77c9062c9165db", "shasum": "" }, "require": { "newfold-labs/wp-module-data": "^2.5.1", - "newfold-labs/wp-module-features": "^1.4" + "newfold-labs/wp-module-features": "^1.4", + "newfold-labs/wp-module-installer": "^1.1" }, "require-dev": { "newfold-labs/wp-php-standards": "^1.2.2" @@ -727,30 +733,34 @@ ], "description": "WordPress Cloud Patterns", "support": { - "source": "https://github.com/newfold-labs/wp-module-patterns/tree/2.4.1", + "source": "https://github.com/newfold-labs/wp-module-patterns/tree/2.6.0", "issues": "https://github.com/newfold-labs/wp-module-patterns/issues" }, - "time": "2024-09-04T13:49:43+00:00" + "time": "2024-10-18T16:33:56+00:00" }, { "name": "newfold-labs/wp-module-performance", - "version": "1.4.1", + "version": "2.0.1", "source": { "type": "git", "url": "https://github.com/newfold-labs/wp-module-performance.git", - "reference": "5e4c87d404788c61ea55e3c62e29e5df48c36340" + "reference": "ed7db2ce699d1ab6c61db28080b4f13f8511cc0d" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/newfold-labs/wp-module-performance/zipball/5e4c87d404788c61ea55e3c62e29e5df48c36340", - "reference": "5e4c87d404788c61ea55e3c62e29e5df48c36340", + "url": "https://api.github.com/repos/newfold-labs/wp-module-performance/zipball/ed7db2ce699d1ab6c61db28080b4f13f8511cc0d", + "reference": "ed7db2ce699d1ab6c61db28080b4f13f8511cc0d", "shasum": "" }, "require": { "newfold-labs/wp-module-context": "^1.0", - "wp-forge/collection": "^1.0", + "newfold-labs/wp-module-features": "^1.3", + "wp-forge/collection": "^1.0.2", "wp-forge/wp-htaccess-manager": "^1.0", - "wpscholar/url": "^1.2" + "wpscholar/url": "^1.2.2" + }, + "require-dev": { + "newfold-labs/wp-php-standards": "^1.2.3" }, "type": "library", "autoload": { @@ -758,6 +768,7 @@ "NewfoldLabs\\WP\\Module\\Performance\\": "includes" }, "files": [ + "includes/PerformanceFeature.php", "includes/functions.php", "bootstrap.php" ] @@ -773,10 +784,57 @@ ], "description": "A module for managing caching functionality.", "support": { - "source": "https://github.com/newfold-labs/wp-module-performance/tree/1.4.1", + "source": "https://github.com/newfold-labs/wp-module-performance/tree/2.0.1", "issues": "https://github.com/newfold-labs/wp-module-performance/issues" }, - "time": "2024-04-22T22:30:42+00:00" + "time": "2024-08-15T22:17:47+00:00" + }, + { + "name": "newfold-labs/wp-module-pls", + "version": "1.0.0", + "source": { + "type": "git", + "url": "https://github.com/newfold-labs/wp-module-pls.git", + "reference": "08b7c41b3d52d66414b6234389d7f4c414477d91" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/newfold-labs/wp-module-pls/zipball/08b7c41b3d52d66414b6234389d7f4c414477d91", + "reference": "08b7c41b3d52d66414b6234389d7f4c414477d91", + "shasum": "" + }, + "require": { + "newfold-labs/wp-module-data": "^2.0" + }, + "require-dev": { + "newfold-labs/wp-php-standards": "^1.2", + "wp-cli/i18n-command": "^2.4.3", + "wp-cli/wp-cli": "^2.11" + }, + "type": "library", + "autoload": { + "psr-4": { + "NewfoldLabs\\WP\\Module\\PLS\\": "includes" + }, + "files": [ + "bootstrap.php" + ] + }, + "license": [ + "GPL-3.0-or-later" + ], + "authors": [ + { + "name": "arunshenoy99", + "email": "devarunshenoy99@gmail.com" + } + ], + "description": "A Newfold module that handles license key provisioning, validation, and other lifecycle events for registered plugins using the PLS API via Hiive.", + "support": { + "source": "https://github.com/newfold-labs/wp-module-pls/tree/1.0.0", + "issues": "https://github.com/newfold-labs/wp-module-pls/issues" + }, + "time": "2024-10-23T09:11:18+00:00" }, { "name": "newfold-labs/wp-module-survey", @@ -1140,16 +1198,16 @@ "packages-dev": [ { "name": "composer/ca-bundle", - "version": "1.5.1", + "version": "1.5.2", "source": { "type": "git", "url": "https://github.com/composer/ca-bundle.git", - "reference": "063d9aa8696582f5a41dffbbaf3c81024f0a604a" + "reference": "48a792895a2b7a6ee65dd5442c299d7b835b6137" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/composer/ca-bundle/zipball/063d9aa8696582f5a41dffbbaf3c81024f0a604a", - "reference": "063d9aa8696582f5a41dffbbaf3c81024f0a604a", + "url": "https://api.github.com/repos/composer/ca-bundle/zipball/48a792895a2b7a6ee65dd5442c299d7b835b6137", + "reference": "48a792895a2b7a6ee65dd5442c299d7b835b6137", "shasum": "" }, "require": { @@ -1159,8 +1217,8 @@ }, "require-dev": { "phpstan/phpstan": "^1.10", + "phpunit/phpunit": "^8 || ^9", "psr/log": "^1.0 || ^2.0 || ^3.0", - "symfony/phpunit-bridge": "^4.2 || ^5", "symfony/process": "^4.0 || ^5.0 || ^6.0 || ^7.0" }, "type": "library", @@ -1196,7 +1254,7 @@ "support": { "irc": "irc://irc.freenode.org/composer", "issues": "https://github.com/composer/ca-bundle/issues", - "source": "https://github.com/composer/ca-bundle/tree/1.5.1" + "source": "https://github.com/composer/ca-bundle/tree/1.5.2" }, "funding": [ { @@ -1212,20 +1270,20 @@ "type": "tidelift" } ], - "time": "2024-07-08T15:28:20+00:00" + "time": "2024-09-25T07:49:53+00:00" }, { "name": "composer/class-map-generator", - "version": "1.3.4", + "version": "1.4.0", "source": { "type": "git", "url": "https://github.com/composer/class-map-generator.git", - "reference": "b1b3fd0b4eaf3ddf3ee230bc340bf3fff454a1a3" + "reference": "98bbf6780e56e0fd2404fe4b82eb665a0f93b783" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/composer/class-map-generator/zipball/b1b3fd0b4eaf3ddf3ee230bc340bf3fff454a1a3", - "reference": "b1b3fd0b4eaf3ddf3ee230bc340bf3fff454a1a3", + "url": "https://api.github.com/repos/composer/class-map-generator/zipball/98bbf6780e56e0fd2404fe4b82eb665a0f93b783", + "reference": "98bbf6780e56e0fd2404fe4b82eb665a0f93b783", "shasum": "" }, "require": { @@ -1238,8 +1296,8 @@ "phpstan/phpstan-deprecation-rules": "^1", "phpstan/phpstan-phpunit": "^1", "phpstan/phpstan-strict-rules": "^1.1", - "symfony/filesystem": "^5.4 || ^6", - "symfony/phpunit-bridge": "^5" + "phpunit/phpunit": "^8", + "symfony/filesystem": "^5.4 || ^6" }, "type": "library", "extra": { @@ -1269,7 +1327,7 @@ ], "support": { "issues": "https://github.com/composer/class-map-generator/issues", - "source": "https://github.com/composer/class-map-generator/tree/1.3.4" + "source": "https://github.com/composer/class-map-generator/tree/1.4.0" }, "funding": [ { @@ -1285,25 +1343,25 @@ "type": "tidelift" } ], - "time": "2024-06-12T14:13:04+00:00" + "time": "2024-10-03T18:14:00+00:00" }, { "name": "composer/composer", - "version": "2.7.9", + "version": "2.8.1", "source": { "type": "git", "url": "https://github.com/composer/composer.git", - "reference": "e30ccdd665828ae66eb1be78f056e39e1d5f55ab" + "reference": "e52b8672276cf436670cdd6bd5de4353740e83b2" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/composer/composer/zipball/e30ccdd665828ae66eb1be78f056e39e1d5f55ab", - "reference": "e30ccdd665828ae66eb1be78f056e39e1d5f55ab", + "url": "https://api.github.com/repos/composer/composer/zipball/e52b8672276cf436670cdd6bd5de4353740e83b2", + "reference": "e52b8672276cf436670cdd6bd5de4353740e83b2", "shasum": "" }, "require": { "composer/ca-bundle": "^1.5", - "composer/class-map-generator": "^1.3.3", + "composer/class-map-generator": "^1.4.0", "composer/metadata-minifier": "^1.0", "composer/pcre": "^2.2 || ^3.2", "composer/semver": "^3.3", @@ -1343,7 +1401,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-main": "2.7-dev" + "dev-main": "2.8-dev" }, "phpstan": { "includes": [ @@ -1383,7 +1441,7 @@ "irc": "ircs://irc.libera.chat:6697/composer", "issues": "https://github.com/composer/composer/issues", "security": "https://github.com/composer/composer/security/policy", - "source": "https://github.com/composer/composer/tree/2.7.9" + "source": "https://github.com/composer/composer/tree/2.8.1" }, "funding": [ { @@ -1399,7 +1457,7 @@ "type": "tidelift" } ], - "time": "2024-09-04T12:43:28+00:00" + "time": "2024-10-04T09:31:01+00:00" }, { "name": "composer/metadata-minifier", @@ -1551,24 +1609,24 @@ }, { "name": "composer/semver", - "version": "3.4.2", + "version": "3.4.3", "source": { "type": "git", "url": "https://github.com/composer/semver.git", - "reference": "c51258e759afdb17f1fd1fe83bc12baaef6309d6" + "reference": "4313d26ada5e0c4edfbd1dc481a92ff7bff91f12" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/composer/semver/zipball/c51258e759afdb17f1fd1fe83bc12baaef6309d6", - "reference": "c51258e759afdb17f1fd1fe83bc12baaef6309d6", + "url": "https://api.github.com/repos/composer/semver/zipball/4313d26ada5e0c4edfbd1dc481a92ff7bff91f12", + "reference": "4313d26ada5e0c4edfbd1dc481a92ff7bff91f12", "shasum": "" }, "require": { "php": "^5.3.2 || ^7.0 || ^8.0" }, "require-dev": { - "phpstan/phpstan": "^1.4", - "symfony/phpunit-bridge": "^4.2 || ^5" + "phpstan/phpstan": "^1.11", + "symfony/phpunit-bridge": "^3 || ^7" }, "type": "library", "extra": { @@ -1612,7 +1670,7 @@ "support": { "irc": "ircs://irc.libera.chat:6697/composer", "issues": "https://github.com/composer/semver/issues", - "source": "https://github.com/composer/semver/tree/3.4.2" + "source": "https://github.com/composer/semver/tree/3.4.3" }, "funding": [ { @@ -1628,7 +1686,7 @@ "type": "tidelift" } ], - "time": "2024-07-12T11:35:52+00:00" + "time": "2024-09-19T14:15:21+00:00" }, { "name": "composer/spdx-licenses", @@ -2979,16 +3037,16 @@ }, { "name": "squizlabs/php_codesniffer", - "version": "3.10.2", + "version": "3.10.3", "source": { "type": "git", "url": "https://github.com/PHPCSStandards/PHP_CodeSniffer.git", - "reference": "86e5f5dd9a840c46810ebe5ff1885581c42a3017" + "reference": "62d32998e820bddc40f99f8251958aed187a5c9c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/PHPCSStandards/PHP_CodeSniffer/zipball/86e5f5dd9a840c46810ebe5ff1885581c42a3017", - "reference": "86e5f5dd9a840c46810ebe5ff1885581c42a3017", + "url": "https://api.github.com/repos/PHPCSStandards/PHP_CodeSniffer/zipball/62d32998e820bddc40f99f8251958aed187a5c9c", + "reference": "62d32998e820bddc40f99f8251958aed187a5c9c", "shasum": "" }, "require": { @@ -3055,20 +3113,20 @@ "type": "open_collective" } ], - "time": "2024-07-21T23:26:44+00:00" + "time": "2024-09-18T10:38:58+00:00" }, { "name": "symfony/console", - "version": "v5.4.43", + "version": "v5.4.44", "source": { "type": "git", "url": "https://github.com/symfony/console.git", - "reference": "e86f8554de667c16dde8aeb89a3990cfde924df9" + "reference": "5b5a0aa66e3296e303e22490f90f521551835a83" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/console/zipball/e86f8554de667c16dde8aeb89a3990cfde924df9", - "reference": "e86f8554de667c16dde8aeb89a3990cfde924df9", + "url": "https://api.github.com/repos/symfony/console/zipball/5b5a0aa66e3296e303e22490f90f521551835a83", + "reference": "5b5a0aa66e3296e303e22490f90f521551835a83", "shasum": "" }, "require": { @@ -3138,7 +3196,7 @@ "terminal" ], "support": { - "source": "https://github.com/symfony/console/tree/v5.4.43" + "source": "https://github.com/symfony/console/tree/v5.4.44" }, "funding": [ { @@ -3154,7 +3212,7 @@ "type": "tidelift" } ], - "time": "2024-08-13T16:31:56+00:00" + "time": "2024-09-20T07:56:40+00:00" }, { "name": "symfony/deprecation-contracts", @@ -3225,16 +3283,16 @@ }, { "name": "symfony/filesystem", - "version": "v5.4.41", + "version": "v5.4.44", "source": { "type": "git", "url": "https://github.com/symfony/filesystem.git", - "reference": "6d29dd9340b372fa603f04e6df4dd76bb808591e" + "reference": "76c3818964e9d32be3862c9318ae3ba9aa280ddc" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/filesystem/zipball/6d29dd9340b372fa603f04e6df4dd76bb808591e", - "reference": "6d29dd9340b372fa603f04e6df4dd76bb808591e", + "url": "https://api.github.com/repos/symfony/filesystem/zipball/76c3818964e9d32be3862c9318ae3ba9aa280ddc", + "reference": "76c3818964e9d32be3862c9318ae3ba9aa280ddc", "shasum": "" }, "require": { @@ -3272,7 +3330,7 @@ "description": "Provides basic utilities for the filesystem", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/filesystem/tree/v5.4.41" + "source": "https://github.com/symfony/filesystem/tree/v5.4.44" }, "funding": [ { @@ -3288,7 +3346,7 @@ "type": "tidelift" } ], - "time": "2024-06-28T09:36:24+00:00" + "time": "2024-09-16T14:52:48+00:00" }, { "name": "symfony/finder", @@ -3905,16 +3963,16 @@ }, { "name": "symfony/process", - "version": "v5.4.40", + "version": "v5.4.44", "source": { "type": "git", "url": "https://github.com/symfony/process.git", - "reference": "deedcb3bb4669cae2148bc920eafd2b16dc7c046" + "reference": "1b9fa82b5c62cd49da8c9e3952dd8531ada65096" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/process/zipball/deedcb3bb4669cae2148bc920eafd2b16dc7c046", - "reference": "deedcb3bb4669cae2148bc920eafd2b16dc7c046", + "url": "https://api.github.com/repos/symfony/process/zipball/1b9fa82b5c62cd49da8c9e3952dd8531ada65096", + "reference": "1b9fa82b5c62cd49da8c9e3952dd8531ada65096", "shasum": "" }, "require": { @@ -3947,7 +4005,7 @@ "description": "Executes commands in sub-processes", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/process/tree/v5.4.40" + "source": "https://github.com/symfony/process/tree/v5.4.44" }, "funding": [ { @@ -3963,7 +4021,7 @@ "type": "tidelift" } ], - "time": "2024-05-31T14:33:22+00:00" + "time": "2024-09-17T12:46:43+00:00" }, { "name": "symfony/service-contracts", @@ -4050,16 +4108,16 @@ }, { "name": "symfony/string", - "version": "v5.4.43", + "version": "v5.4.44", "source": { "type": "git", "url": "https://github.com/symfony/string.git", - "reference": "8be1d484951ff5ca995eaf8edcbcb8b9a5888450" + "reference": "832caa16b6d9aac6bf11747315225f5aba384c24" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/string/zipball/8be1d484951ff5ca995eaf8edcbcb8b9a5888450", - "reference": "8be1d484951ff5ca995eaf8edcbcb8b9a5888450", + "url": "https://api.github.com/repos/symfony/string/zipball/832caa16b6d9aac6bf11747315225f5aba384c24", + "reference": "832caa16b6d9aac6bf11747315225f5aba384c24", "shasum": "" }, "require": { @@ -4116,7 +4174,7 @@ "utf8" ], "support": { - "source": "https://github.com/symfony/string/tree/v5.4.43" + "source": "https://github.com/symfony/string/tree/v5.4.44" }, "funding": [ { @@ -4132,7 +4190,7 @@ "type": "tidelift" } ], - "time": "2024-08-01T10:24:28+00:00" + "time": "2024-09-20T07:56:40+00:00" }, { "name": "wp-cli/cache-command", @@ -4211,16 +4269,16 @@ }, { "name": "wp-cli/checksum-command", - "version": "v2.2.5", + "version": "v2.3.0", "source": { "type": "git", "url": "https://github.com/wp-cli/checksum-command.git", - "reference": "f6911998734018da08f75464a168feb0d07b4475" + "reference": "bc82cfb0b1e24eec99cd1bfa515a62c63bd46936" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/wp-cli/checksum-command/zipball/f6911998734018da08f75464a168feb0d07b4475", - "reference": "f6911998734018da08f75464a168feb0d07b4475", + "url": "https://api.github.com/repos/wp-cli/checksum-command/zipball/bc82cfb0b1e24eec99cd1bfa515a62c63bd46936", + "reference": "bc82cfb0b1e24eec99cd1bfa515a62c63bd46936", "shasum": "" }, "require": { @@ -4264,27 +4322,27 @@ "homepage": "https://github.com/wp-cli/checksum-command", "support": { "issues": "https://github.com/wp-cli/checksum-command/issues", - "source": "https://github.com/wp-cli/checksum-command/tree/v2.2.5" + "source": "https://github.com/wp-cli/checksum-command/tree/v2.3.0" }, - "time": "2023-11-10T21:54:15+00:00" + "time": "2024-10-01T21:53:46+00:00" }, { "name": "wp-cli/config-command", - "version": "v2.3.6", + "version": "v2.3.7", "source": { "type": "git", "url": "https://github.com/wp-cli/config-command.git", - "reference": "82a64ae0dbd8bc91e2bf0446666ae24650223775" + "reference": "effb7898bc6ffdaf8a0666432f3c8e35b715858e" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/wp-cli/config-command/zipball/82a64ae0dbd8bc91e2bf0446666ae24650223775", - "reference": "82a64ae0dbd8bc91e2bf0446666ae24650223775", + "url": "https://api.github.com/repos/wp-cli/config-command/zipball/effb7898bc6ffdaf8a0666432f3c8e35b715858e", + "reference": "effb7898bc6ffdaf8a0666432f3c8e35b715858e", "shasum": "" }, "require": { "wp-cli/wp-cli": "^2.5", - "wp-cli/wp-config-transformer": "^1.2.1" + "wp-cli/wp-config-transformer": "^1.4.0" }, "require-dev": { "wp-cli/db-command": "^1.3 || ^2", @@ -4338,9 +4396,9 @@ "homepage": "https://github.com/wp-cli/config-command", "support": { "issues": "https://github.com/wp-cli/config-command/issues", - "source": "https://github.com/wp-cli/config-command/tree/v2.3.6" + "source": "https://github.com/wp-cli/config-command/tree/v2.3.7" }, - "time": "2024-08-05T13:34:06+00:00" + "time": "2024-10-01T10:19:18+00:00" }, { "name": "wp-cli/core-command", @@ -4415,16 +4473,16 @@ }, { "name": "wp-cli/cron-command", - "version": "v2.3.0", + "version": "v2.3.1", "source": { "type": "git", "url": "https://github.com/wp-cli/cron-command.git", - "reference": "2108295a2f30de77d3ee70b1a60d1b542c2dfd79" + "reference": "46f849f2f0ba859c6acd356eefc76769c8381ae5" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/wp-cli/cron-command/zipball/2108295a2f30de77d3ee70b1a60d1b542c2dfd79", - "reference": "2108295a2f30de77d3ee70b1a60d1b542c2dfd79", + "url": "https://api.github.com/repos/wp-cli/cron-command/zipball/46f849f2f0ba859c6acd356eefc76769c8381ae5", + "reference": "46f849f2f0ba859c6acd356eefc76769c8381ae5", "shasum": "" }, "require": { @@ -4478,22 +4536,22 @@ "homepage": "https://github.com/wp-cli/cron-command", "support": { "issues": "https://github.com/wp-cli/cron-command/issues", - "source": "https://github.com/wp-cli/cron-command/tree/v2.3.0" + "source": "https://github.com/wp-cli/cron-command/tree/v2.3.1" }, - "time": "2024-02-15T10:23:39+00:00" + "time": "2024-10-01T10:30:28+00:00" }, { "name": "wp-cli/db-command", - "version": "v2.1.1", + "version": "v2.1.2", "source": { "type": "git", "url": "https://github.com/wp-cli/db-command.git", - "reference": "60ee5535e4b39e2d930894b7f435a2e488171c27" + "reference": "d4c0dd25ec8b3d0118a2400cf6b87e8d08b77c43" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/wp-cli/db-command/zipball/60ee5535e4b39e2d930894b7f435a2e488171c27", - "reference": "60ee5535e4b39e2d930894b7f435a2e488171c27", + "url": "https://api.github.com/repos/wp-cli/db-command/zipball/d4c0dd25ec8b3d0118a2400cf6b87e8d08b77c43", + "reference": "d4c0dd25ec8b3d0118a2400cf6b87e8d08b77c43", "shasum": "" }, "require": { @@ -4552,22 +4610,22 @@ "homepage": "https://github.com/wp-cli/db-command", "support": { "issues": "https://github.com/wp-cli/db-command/issues", - "source": "https://github.com/wp-cli/db-command/tree/v2.1.1" + "source": "https://github.com/wp-cli/db-command/tree/v2.1.2" }, - "time": "2024-07-10T17:31:56+00:00" + "time": "2024-10-01T10:48:48+00:00" }, { "name": "wp-cli/embed-command", - "version": "v2.0.16", + "version": "v2.0.17", "source": { "type": "git", "url": "https://github.com/wp-cli/embed-command.git", - "reference": "edfa448396484770a419ac7a17b0ec194ae76654" + "reference": "ece56cafcb8ef0a05dac9e41b5ab852ecd57b02c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/wp-cli/embed-command/zipball/edfa448396484770a419ac7a17b0ec194ae76654", - "reference": "edfa448396484770a419ac7a17b0ec194ae76654", + "url": "https://api.github.com/repos/wp-cli/embed-command/zipball/ece56cafcb8ef0a05dac9e41b5ab852ecd57b02c", + "reference": "ece56cafcb8ef0a05dac9e41b5ab852ecd57b02c", "shasum": "" }, "require": { @@ -4619,22 +4677,22 @@ "homepage": "https://github.com/wp-cli/embed-command", "support": { "issues": "https://github.com/wp-cli/embed-command/issues", - "source": "https://github.com/wp-cli/embed-command/tree/v2.0.16" + "source": "https://github.com/wp-cli/embed-command/tree/v2.0.17" }, - "time": "2024-04-04T11:57:03+00:00" + "time": "2024-10-01T10:30:42+00:00" }, { "name": "wp-cli/entity-command", - "version": "v2.8.1", + "version": "v2.8.2", "source": { "type": "git", "url": "https://github.com/wp-cli/entity-command.git", - "reference": "c270cc9a2367cb8f5845f26a6b5e203397c91392" + "reference": "9dad0753ecba347d5fbdb6b80d01e38768bca4ea" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/wp-cli/entity-command/zipball/c270cc9a2367cb8f5845f26a6b5e203397c91392", - "reference": "c270cc9a2367cb8f5845f26a6b5e203397c91392", + "url": "https://api.github.com/repos/wp-cli/entity-command/zipball/9dad0753ecba347d5fbdb6b80d01e38768bca4ea", + "reference": "9dad0753ecba347d5fbdb6b80d01e38768bca4ea", "shasum": "" }, "require": { @@ -4856,22 +4914,22 @@ "homepage": "https://github.com/wp-cli/entity-command", "support": { "issues": "https://github.com/wp-cli/entity-command/issues", - "source": "https://github.com/wp-cli/entity-command/tree/v2.8.1" + "source": "https://github.com/wp-cli/entity-command/tree/v2.8.2" }, - "time": "2024-07-29T13:52:21+00:00" + "time": "2024-10-01T10:44:33+00:00" }, { "name": "wp-cli/eval-command", - "version": "v2.2.4", + "version": "v2.2.5", "source": { "type": "git", "url": "https://github.com/wp-cli/eval-command.git", - "reference": "5a9c605ae52d118f582693209d2f1c5c4f214b76" + "reference": "1fd2dc9ae74f5fcde7a9b861a1073d6f19952b74" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/wp-cli/eval-command/zipball/5a9c605ae52d118f582693209d2f1c5c4f214b76", - "reference": "5a9c605ae52d118f582693209d2f1c5c4f214b76", + "url": "https://api.github.com/repos/wp-cli/eval-command/zipball/1fd2dc9ae74f5fcde7a9b861a1073d6f19952b74", + "reference": "1fd2dc9ae74f5fcde7a9b861a1073d6f19952b74", "shasum": "" }, "require": { @@ -4914,22 +4972,22 @@ "homepage": "https://github.com/wp-cli/eval-command", "support": { "issues": "https://github.com/wp-cli/eval-command/issues", - "source": "https://github.com/wp-cli/eval-command/tree/v2.2.4" + "source": "https://github.com/wp-cli/eval-command/tree/v2.2.5" }, - "time": "2023-08-30T14:51:36+00:00" + "time": "2024-10-01T10:30:51+00:00" }, { "name": "wp-cli/export-command", - "version": "v2.1.12", + "version": "v2.1.13", "source": { "type": "git", "url": "https://github.com/wp-cli/export-command.git", - "reference": "31e3d714ac6d6f0af613c34b33dbc02b85dc2e68" + "reference": "eeafa03095b80d2648d1a67b00c688be9d418aff" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/wp-cli/export-command/zipball/31e3d714ac6d6f0af613c34b33dbc02b85dc2e68", - "reference": "31e3d714ac6d6f0af613c34b33dbc02b85dc2e68", + "url": "https://api.github.com/repos/wp-cli/export-command/zipball/eeafa03095b80d2648d1a67b00c688be9d418aff", + "reference": "eeafa03095b80d2648d1a67b00c688be9d418aff", "shasum": "" }, "require": { @@ -4977,22 +5035,22 @@ "homepage": "https://github.com/wp-cli/export-command", "support": { "issues": "https://github.com/wp-cli/export-command/issues", - "source": "https://github.com/wp-cli/export-command/tree/v2.1.12" + "source": "https://github.com/wp-cli/export-command/tree/v2.1.13" }, - "time": "2023-09-18T21:41:00+00:00" + "time": "2024-10-01T10:31:03+00:00" }, { "name": "wp-cli/extension-command", - "version": "v2.1.22", + "version": "v2.1.23", "source": { "type": "git", "url": "https://github.com/wp-cli/extension-command.git", - "reference": "7baa058ae33e78a8e19f6a189203ed08e03a21be" + "reference": "c307a11e7ea078cfd52177eefeef9906aa69edcd" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/wp-cli/extension-command/zipball/7baa058ae33e78a8e19f6a189203ed08e03a21be", - "reference": "7baa058ae33e78a8e19f6a189203ed08e03a21be", + "url": "https://api.github.com/repos/wp-cli/extension-command/zipball/c307a11e7ea078cfd52177eefeef9906aa69edcd", + "reference": "c307a11e7ea078cfd52177eefeef9906aa69edcd", "shasum": "" }, "require": { @@ -5075,22 +5133,22 @@ "homepage": "https://github.com/wp-cli/extension-command", "support": { "issues": "https://github.com/wp-cli/extension-command/issues", - "source": "https://github.com/wp-cli/extension-command/tree/v2.1.22" + "source": "https://github.com/wp-cli/extension-command/tree/v2.1.23" }, - "time": "2024-06-04T12:24:31+00:00" + "time": "2024-10-01T10:44:18+00:00" }, { "name": "wp-cli/i18n-command", - "version": "v2.6.2", + "version": "v2.6.3", "source": { "type": "git", "url": "https://github.com/wp-cli/i18n-command.git", - "reference": "53518a11f314119e320597c7a8274f11b1295bdc" + "reference": "065bb3758fcbff922f1b7a01ab702aab0da79803" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/wp-cli/i18n-command/zipball/53518a11f314119e320597c7a8274f11b1295bdc", - "reference": "53518a11f314119e320597c7a8274f11b1295bdc", + "url": "https://api.github.com/repos/wp-cli/i18n-command/zipball/065bb3758fcbff922f1b7a01ab702aab0da79803", + "reference": "065bb3758fcbff922f1b7a01ab702aab0da79803", "shasum": "" }, "require": { @@ -5144,22 +5202,22 @@ "homepage": "https://github.com/wp-cli/i18n-command", "support": { "issues": "https://github.com/wp-cli/i18n-command/issues", - "source": "https://github.com/wp-cli/i18n-command/tree/v2.6.2" + "source": "https://github.com/wp-cli/i18n-command/tree/v2.6.3" }, - "time": "2024-07-03T12:50:00+00:00" + "time": "2024-10-01T11:16:25+00:00" }, { "name": "wp-cli/import-command", - "version": "v2.0.12", + "version": "v2.0.13", "source": { "type": "git", "url": "https://github.com/wp-cli/import-command.git", - "reference": "7aafa54bf7c122dfbd777b5e5fbb5907af38e504" + "reference": "22f32451046c1d8e7963ff96d95942af14fbb4e9" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/wp-cli/import-command/zipball/7aafa54bf7c122dfbd777b5e5fbb5907af38e504", - "reference": "7aafa54bf7c122dfbd777b5e5fbb5907af38e504", + "url": "https://api.github.com/repos/wp-cli/import-command/zipball/22f32451046c1d8e7963ff96d95942af14fbb4e9", + "reference": "22f32451046c1d8e7963ff96d95942af14fbb4e9", "shasum": "" }, "require": { @@ -5204,22 +5262,22 @@ "homepage": "https://github.com/wp-cli/import-command", "support": { "issues": "https://github.com/wp-cli/import-command/issues", - "source": "https://github.com/wp-cli/import-command/tree/v2.0.12" + "source": "https://github.com/wp-cli/import-command/tree/v2.0.13" }, - "time": "2023-08-30T15:53:58+00:00" + "time": "2024-10-01T10:44:58+00:00" }, { "name": "wp-cli/language-command", - "version": "v2.0.21", + "version": "v2.0.22", "source": { "type": "git", "url": "https://github.com/wp-cli/language-command.git", - "reference": "a9b5ae5976ebb48ee5465cf2f8d9afc863bc4e1c" + "reference": "27db28eca5f7627c7fbd8da82c6c51eb05e7858e" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/wp-cli/language-command/zipball/a9b5ae5976ebb48ee5465cf2f8d9afc863bc4e1c", - "reference": "a9b5ae5976ebb48ee5465cf2f8d9afc863bc4e1c", + "url": "https://api.github.com/repos/wp-cli/language-command/zipball/27db28eca5f7627c7fbd8da82c6c51eb05e7858e", + "reference": "27db28eca5f7627c7fbd8da82c6c51eb05e7858e", "shasum": "" }, "require": { @@ -5257,7 +5315,8 @@ "language theme install", "language theme list", "language theme uninstall", - "language theme update" + "language theme update", + "site switch-language" ] }, "autoload": { @@ -5283,22 +5342,22 @@ "homepage": "https://github.com/wp-cli/language-command", "support": { "issues": "https://github.com/wp-cli/language-command/issues", - "source": "https://github.com/wp-cli/language-command/tree/v2.0.21" + "source": "https://github.com/wp-cli/language-command/tree/v2.0.22" }, - "time": "2024-06-21T10:12:40+00:00" + "time": "2024-10-01T10:45:06+00:00" }, { "name": "wp-cli/maintenance-mode-command", - "version": "v2.1.1", + "version": "v2.1.2", "source": { "type": "git", "url": "https://github.com/wp-cli/maintenance-mode-command.git", - "reference": "a329a536eb96890654b913b5499b300fcc3f8eab" + "reference": "d560d7f42fb21e1fc182d69e0cdf06c69891791d" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/wp-cli/maintenance-mode-command/zipball/a329a536eb96890654b913b5499b300fcc3f8eab", - "reference": "a329a536eb96890654b913b5499b300fcc3f8eab", + "url": "https://api.github.com/repos/wp-cli/maintenance-mode-command/zipball/d560d7f42fb21e1fc182d69e0cdf06c69891791d", + "reference": "d560d7f42fb21e1fc182d69e0cdf06c69891791d", "shasum": "" }, "require": { @@ -5344,22 +5403,22 @@ "homepage": "https://github.com/wp-cli/maintenance-mode-command", "support": { "issues": "https://github.com/wp-cli/maintenance-mode-command/issues", - "source": "https://github.com/wp-cli/maintenance-mode-command/tree/v2.1.1" + "source": "https://github.com/wp-cli/maintenance-mode-command/tree/v2.1.2" }, - "time": "2024-04-04T11:28:11+00:00" + "time": "2024-10-01T10:45:18+00:00" }, { "name": "wp-cli/media-command", - "version": "v2.2.0", + "version": "v2.2.1", "source": { "type": "git", "url": "https://github.com/wp-cli/media-command.git", - "reference": "8eefc101713713871c1802e387b87348f6a048d5" + "reference": "5e2d34d7d01c87d1f50b4838512b3501f5ca6f9a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/wp-cli/media-command/zipball/8eefc101713713871c1802e387b87348f6a048d5", - "reference": "8eefc101713713871c1802e387b87348f6a048d5", + "url": "https://api.github.com/repos/wp-cli/media-command/zipball/5e2d34d7d01c87d1f50b4838512b3501f5ca6f9a", + "reference": "5e2d34d7d01c87d1f50b4838512b3501f5ca6f9a", "shasum": "" }, "require": { @@ -5406,9 +5465,9 @@ "homepage": "https://github.com/wp-cli/media-command", "support": { "issues": "https://github.com/wp-cli/media-command/issues", - "source": "https://github.com/wp-cli/media-command/tree/v2.2.0" + "source": "https://github.com/wp-cli/media-command/tree/v2.2.1" }, - "time": "2024-06-06T09:32:12+00:00" + "time": "2024-10-01T10:45:30+00:00" }, { "name": "wp-cli/mustangostang-spyc", @@ -5463,16 +5522,16 @@ }, { "name": "wp-cli/package-command", - "version": "v2.5.2", + "version": "v2.5.3", "source": { "type": "git", "url": "https://github.com/wp-cli/package-command.git", - "reference": "3370dd88ddf906992bda3a28c8c387c8f4f33073" + "reference": "9dc4084c66547049ab863e293f427f8c0d099b18" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/wp-cli/package-command/zipball/3370dd88ddf906992bda3a28c8c387c8f4f33073", - "reference": "3370dd88ddf906992bda3a28c8c387c8f4f33073", + "url": "https://api.github.com/repos/wp-cli/package-command/zipball/9dc4084c66547049ab863e293f427f8c0d099b18", + "reference": "9dc4084c66547049ab863e293f427f8c0d099b18", "shasum": "" }, "require": { @@ -5522,9 +5581,9 @@ "homepage": "https://github.com/wp-cli/package-command", "support": { "issues": "https://github.com/wp-cli/package-command/issues", - "source": "https://github.com/wp-cli/package-command/tree/v2.5.2" + "source": "https://github.com/wp-cli/package-command/tree/v2.5.3" }, - "time": "2024-05-22T05:26:05+00:00" + "time": "2024-10-01T11:13:44+00:00" }, { "name": "wp-cli/php-cli-tools", @@ -5591,16 +5650,16 @@ }, { "name": "wp-cli/rewrite-command", - "version": "v2.0.13", + "version": "v2.0.14", "source": { "type": "git", "url": "https://github.com/wp-cli/rewrite-command.git", - "reference": "293f9de9905b9d0199d72ff0d17e837228e47a10" + "reference": "0dd0d11918eaaf2fcad5bc13646ecf266ffa83e9" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/wp-cli/rewrite-command/zipball/293f9de9905b9d0199d72ff0d17e837228e47a10", - "reference": "293f9de9905b9d0199d72ff0d17e837228e47a10", + "url": "https://api.github.com/repos/wp-cli/rewrite-command/zipball/0dd0d11918eaaf2fcad5bc13646ecf266ffa83e9", + "reference": "0dd0d11918eaaf2fcad5bc13646ecf266ffa83e9", "shasum": "" }, "require": { @@ -5646,22 +5705,22 @@ "homepage": "https://github.com/wp-cli/rewrite-command", "support": { "issues": "https://github.com/wp-cli/rewrite-command/issues", - "source": "https://github.com/wp-cli/rewrite-command/tree/v2.0.13" + "source": "https://github.com/wp-cli/rewrite-command/tree/v2.0.14" }, - "time": "2023-08-30T15:25:42+00:00" + "time": "2024-10-01T10:45:45+00:00" }, { "name": "wp-cli/role-command", - "version": "v2.0.14", + "version": "v2.0.15", "source": { "type": "git", "url": "https://github.com/wp-cli/role-command.git", - "reference": "7680178016a1811421897aeb9eeae9e81e6893ac" + "reference": "f92efbf92a0bb4b34e1de9523d9cbd393d406ba2" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/wp-cli/role-command/zipball/7680178016a1811421897aeb9eeae9e81e6893ac", - "reference": "7680178016a1811421897aeb9eeae9e81e6893ac", + "url": "https://api.github.com/repos/wp-cli/role-command/zipball/f92efbf92a0bb4b34e1de9523d9cbd393d406ba2", + "reference": "f92efbf92a0bb4b34e1de9523d9cbd393d406ba2", "shasum": "" }, "require": { @@ -5712,22 +5771,22 @@ "homepage": "https://github.com/wp-cli/role-command", "support": { "issues": "https://github.com/wp-cli/role-command/issues", - "source": "https://github.com/wp-cli/role-command/tree/v2.0.14" + "source": "https://github.com/wp-cli/role-command/tree/v2.0.15" }, - "time": "2023-08-30T16:18:53+00:00" + "time": "2024-10-01T10:46:02+00:00" }, { "name": "wp-cli/scaffold-command", - "version": "v2.3.0", + "version": "v2.4.0", "source": { "type": "git", "url": "https://github.com/wp-cli/scaffold-command.git", - "reference": "7a7d145c260ead64fa93a59498d60def970d5214" + "reference": "d67d8348f653d00438535ec4389ab9259ef6fb8f" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/wp-cli/scaffold-command/zipball/7a7d145c260ead64fa93a59498d60def970d5214", - "reference": "7a7d145c260ead64fa93a59498d60def970d5214", + "url": "https://api.github.com/repos/wp-cli/scaffold-command/zipball/d67d8348f653d00438535ec4389ab9259ef6fb8f", + "reference": "d67d8348f653d00438535ec4389ab9259ef6fb8f", "shasum": "" }, "require": { @@ -5778,9 +5837,9 @@ "homepage": "https://github.com/wp-cli/scaffold-command", "support": { "issues": "https://github.com/wp-cli/scaffold-command/issues", - "source": "https://github.com/wp-cli/scaffold-command/tree/v2.3.0" + "source": "https://github.com/wp-cli/scaffold-command/tree/v2.4.0" }, - "time": "2024-04-26T21:05:48+00:00" + "time": "2024-10-01T11:13:37+00:00" }, { "name": "wp-cli/search-replace-command", @@ -5844,16 +5903,16 @@ }, { "name": "wp-cli/server-command", - "version": "v2.0.13", + "version": "v2.0.14", "source": { "type": "git", "url": "https://github.com/wp-cli/server-command.git", - "reference": "42babfa0fdd517cd8bdd66528b3c9027d6d14a29" + "reference": "012e10d3281866235cbf626f38a27169d6c6e13b" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/wp-cli/server-command/zipball/42babfa0fdd517cd8bdd66528b3c9027d6d14a29", - "reference": "42babfa0fdd517cd8bdd66528b3c9027d6d14a29", + "url": "https://api.github.com/repos/wp-cli/server-command/zipball/012e10d3281866235cbf626f38a27169d6c6e13b", + "reference": "012e10d3281866235cbf626f38a27169d6c6e13b", "shasum": "" }, "require": { @@ -5896,22 +5955,22 @@ "homepage": "https://github.com/wp-cli/server-command", "support": { "issues": "https://github.com/wp-cli/server-command/issues", - "source": "https://github.com/wp-cli/server-command/tree/v2.0.13" + "source": "https://github.com/wp-cli/server-command/tree/v2.0.14" }, - "time": "2023-08-30T15:27:57+00:00" + "time": "2024-10-01T10:46:38+00:00" }, { "name": "wp-cli/shell-command", - "version": "v2.0.14", + "version": "v2.0.15", "source": { "type": "git", "url": "https://github.com/wp-cli/shell-command.git", - "reference": "f470d04a597e294ef29ad73dace9d4de98df7c42" + "reference": "2c38ef12a912b23224c7f2abd5bc716a889340fb" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/wp-cli/shell-command/zipball/f470d04a597e294ef29ad73dace9d4de98df7c42", - "reference": "f470d04a597e294ef29ad73dace9d4de98df7c42", + "url": "https://api.github.com/repos/wp-cli/shell-command/zipball/2c38ef12a912b23224c7f2abd5bc716a889340fb", + "reference": "2c38ef12a912b23224c7f2abd5bc716a889340fb", "shasum": "" }, "require": { @@ -5953,22 +6012,22 @@ "homepage": "https://github.com/wp-cli/shell-command", "support": { "issues": "https://github.com/wp-cli/shell-command/issues", - "source": "https://github.com/wp-cli/shell-command/tree/v2.0.14" + "source": "https://github.com/wp-cli/shell-command/tree/v2.0.15" }, - "time": "2023-08-30T15:58:08+00:00" + "time": "2024-10-01T10:46:50+00:00" }, { "name": "wp-cli/super-admin-command", - "version": "v2.0.14", + "version": "v2.0.15", "source": { "type": "git", "url": "https://github.com/wp-cli/super-admin-command.git", - "reference": "0fc8a6146d0450a8b522485e50886e976f5249b6" + "reference": "ecd9cee09918eb34f60c05944cc188f4916cb026" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/wp-cli/super-admin-command/zipball/0fc8a6146d0450a8b522485e50886e976f5249b6", - "reference": "0fc8a6146d0450a8b522485e50886e976f5249b6", + "url": "https://api.github.com/repos/wp-cli/super-admin-command/zipball/ecd9cee09918eb34f60c05944cc188f4916cb026", + "reference": "ecd9cee09918eb34f60c05944cc188f4916cb026", "shasum": "" }, "require": { @@ -6014,22 +6073,22 @@ "homepage": "https://github.com/wp-cli/super-admin-command", "support": { "issues": "https://github.com/wp-cli/super-admin-command/issues", - "source": "https://github.com/wp-cli/super-admin-command/tree/v2.0.14" + "source": "https://github.com/wp-cli/super-admin-command/tree/v2.0.15" }, - "time": "2024-02-26T12:17:45+00:00" + "time": "2024-10-01T10:48:29+00:00" }, { "name": "wp-cli/widget-command", - "version": "v2.1.10", + "version": "v2.1.11", "source": { "type": "git", "url": "https://github.com/wp-cli/widget-command.git", - "reference": "7062ed3fdfa17265320737f43efe5651d783f439" + "reference": "c50cd32e4e3d16bf29821ae0208b7154ef6f9031" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/wp-cli/widget-command/zipball/7062ed3fdfa17265320737f43efe5651d783f439", - "reference": "7062ed3fdfa17265320737f43efe5651d783f439", + "url": "https://api.github.com/repos/wp-cli/widget-command/zipball/c50cd32e4e3d16bf29821ae0208b7154ef6f9031", + "reference": "c50cd32e4e3d16bf29821ae0208b7154ef6f9031", "shasum": "" }, "require": { @@ -6081,9 +6140,9 @@ "homepage": "https://github.com/wp-cli/widget-command", "support": { "issues": "https://github.com/wp-cli/widget-command/issues", - "source": "https://github.com/wp-cli/widget-command/tree/v2.1.10" + "source": "https://github.com/wp-cli/widget-command/tree/v2.1.11" }, - "time": "2024-04-19T13:21:01+00:00" + "time": "2024-10-01T10:48:21+00:00" }, { "name": "wp-cli/wp-cli", @@ -6230,16 +6289,16 @@ }, { "name": "wp-cli/wp-config-transformer", - "version": "v1.4.0", + "version": "v1.4.1", "source": { "type": "git", "url": "https://github.com/wp-cli/wp-config-transformer.git", - "reference": "9b470f6f1a75707b22e9cfb85bb74120256243b4" + "reference": "9da378b5a4e28bba3bce4ff4ff04a54d8c9f1a01" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/wp-cli/wp-config-transformer/zipball/9b470f6f1a75707b22e9cfb85bb74120256243b4", - "reference": "9b470f6f1a75707b22e9cfb85bb74120256243b4", + "url": "https://api.github.com/repos/wp-cli/wp-config-transformer/zipball/9da378b5a4e28bba3bce4ff4ff04a54d8c9f1a01", + "reference": "9da378b5a4e28bba3bce4ff4ff04a54d8c9f1a01", "shasum": "" }, "require": { @@ -6249,6 +6308,11 @@ "wp-cli/wp-cli-tests": "^4.0" }, "type": "library", + "extra": { + "branch-alias": { + "dev-main": "1.x-dev" + } + }, "autoload": { "files": [ "src/WPConfigTransformer.php" @@ -6268,9 +6332,9 @@ "homepage": "https://github.com/wp-cli/wp-config-transformer", "support": { "issues": "https://github.com/wp-cli/wp-config-transformer/issues", - "source": "https://github.com/wp-cli/wp-config-transformer/tree/v1.4.0" + "source": "https://github.com/wp-cli/wp-config-transformer/tree/v1.4.1" }, - "time": "2024-09-17T19:05:47+00:00" + "time": "2024-10-16T12:50:47+00:00" }, { "name": "wp-coding-standards/wpcs", @@ -6353,5 +6417,5 @@ "platform-overrides": { "php": "7.3.0" }, - "plugin-api-version": "2.3.0" + "plugin-api-version": "2.6.0" } diff --git a/package-lock.json b/package-lock.json index e10e65d9..44c24aad 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "@newfold-labs/wp-module-ecommerce", - "version": "1.4.0-beta.9", + "version": "1.4.0", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "@newfold-labs/wp-module-ecommerce", - "version": "1.4.0-beta.9", + "version": "1.4.0", "license": "GPL-2.0-or-later", "dependencies": { "@faizaanceg/pandora": "^1.1.1", diff --git a/package.json b/package.json index ce3a7fea..0a067704 100644 --- a/package.json +++ b/package.json @@ -2,7 +2,7 @@ "name": "@newfold-labs/wp-module-ecommerce", "description": "Brand Agnostic eCommerce Experience", "license": "GPL-2.0-or-later", - "version": "1.4.0-beta.9", + "version": "1.4.0", "main": "build/index.js", "files": [ "build/",