* Handle new object for posts and recommendations
* Set breadcrumb parent for woocommerce-coupons to be woocommerce-marketing
* Add main coupon wrapping component
* Render coupon wrapper element below coupon table using wp-admin-scripts
* Finish off implementing category param for data store resolvers
* Create a helper trait for legacy coupons
* Add coupon related titles and descriptions
* Add note for the coupons being moved
* Allow for querying by note name in the notes Data Store
* Revamp coupon moved trait
* Add the new note only if we don't have an unactioned note and perform a redirect to ensure menu updates
* set_icon is deprecated
* Move coupon menu, adding a note for customers
* Translate title and descriptions
* Whitespace
* Account for coupon functionality being disabled
* Hide legacy menu before redirect
* Don’t keep adding the note if customer dismisses it from inbox
* Move behind feature flag
* Add note if feature enabled
* Add filter to override coupon feature
* Tweak option name to refer to wc_admin
To help with finding etc.
* use css variables
* Add the new note only if we don't have an unactioned note
* Switch the filter logic so `false` turns off the feature
This is a bit more intuitive when utilizing the filter
* Remove extraneous string and add trailing new lines
* Use correct posts object in tests
* Revert accidental removal of where_types
* Add coupons category to RecommendedExtensions
* Use 1.1 api to get categorized recommendations
* Add missing text domains
* Fix menu handling to point to woocommerce-marketing
* Only load coupon scripts on the coupon page
* Rework marketing menu logic to register pages more properly
* Use correct wc-admin path for marketing page
* Remove separate feature flag
WC Admin has existing feature flags to load enable/disable the feature
* Only set the coupon parent to marketing when the feature is enabled
* Only load coupon feature if marketing feature is enabled
Co-authored-by: Dan Bitzer <danielbitzer@gmail.com>
Co-authored-by: Jeremy Pry <jeremy.pry@gmail.com>
* Product count rule
# Conflicts:
# src/RemoteInboxNotifications/GetRuleProcessor.php
# Conflicts:
# src/RemoteInboxNotifications/GetRuleProcessor.php
* Use WC class to get products instead of a custom query
* Remove ProductsProvider
* Use total in product query
* Updates to suit parent branch
* Fixed return value
Co-authored-by: Rebecca Scott <me@becdetat.com>
* Fix comment and convert if..elseif to switch
* Take out intermediate function
* make ProductsProvider a non-static class
* Adds RINDS data rule, and set up for woocommerce/woocommerce-admin#4223
# Conflicts:
# src/RemoteInboxNotifications/EvaluateAndGetStatus.php
* Fix rebase issues
# Conflicts:
# src/RemoteInboxNotifications/DataRuleProcessor.php
* Split product data setup out, use product query
# Conflicts:
# src/RemoteInboxNotifications/RemoteInboxNotificationsEngine.php
* Remove RINDS references
* Remove unused products provider
* Add validation to the data rule processor
* Fix some issues that were failing tests
* Remove unused var
* Make data setup for products return the data object
* Rework product query
* Rename $data to $stored_state
* Fix condition in query
* Add time after wcadmin activation rule (https://github.com/woocommerce/woocommerce-admin/pull/4337)
* Add wcadmin active for rule
# Conflicts:
# src/RemoteInboxNotifications/GetRuleProcessor.php
* Use DAY_IN_SECONDS constant
* Fix logic error
* Fix test naming
Co-authored-by: Rebecca Scott <me@becdetat.com>
* Add order count rule (https://github.com/woocommerce/woocommerce-admin/pull/4335)
* Order count rule
# Conflicts:
# src/RemoteInboxNotifications/GetRuleProcessor.php
* Use default provider
Co-authored-by: Rebecca Scott <me@becdetat.com>
* Use correct 'return' value
* Move back to using a SQL query to get the product count
as the WC_Product_Query has issues during the product publish lifecycle. The product is initially published with a taxonomy term of uncategorized which isn't accepted by the query's filter.
* Change back to using WC_Product_Query, and do prelim init via admin_init action
* If there are no specs when running the engine, run the poller first then retry
* Fix some failing tests
* Don't perform init if we're feature toggled off
* Move feature check inside RIN engine class because the feature filter isn't ready during FeaturePlugin init
Co-authored-by: Rebecca Scott <me@becdetat.com>
* Bugfix: there was a problem with the method onChoose in onboarding
This commit fixes a problem with the method onChoose in the last onboarding step
* Small fix
This commit adds a small fix in the use of an element
Co-authored-by: Fernando Marichal <contacto@fernandomarichal.com>
* Dismiss dropdown styles fixed
This commit fixes the "Dismiss" dropdown styles
* Text color replaced in Dismiss dropdown
Co-authored-by: Fernando Marichal <contacto@fernandomarichal.com>
* Make it possible to add marketing submenu pages
* Always set the parent value for marketing pages
* phpcs
* Add ‘overview’ to breadcrumb and path
* Fix permission check conditional
* Add parent menu at priority of 9, before other items are usually added
* Revert to use `/marketing` as the page path
* Added new notification to choose a niche
This commit adds a new notification to choose a niche
# Conflicts:
# src/Events.php
* Bugfix: removed wrong validation
* Added validation for onboarding_profile
This commits adds a validation to confirm that the onboarding_profile is set.
Co-authored-by: Fernando Marichal <contacto@fernandomarichal.com>
* Show Stripe task for recently supported countries
* Add Puerto Rico as supported 'country', included in US by Stripe
* Add preview country India to Stripe supported list
* refactor slider component to be functional
* Refactor RecommendedExtensions
* Refactor KnowledgeBase
* Refactor API to account for component location changes and categories
* Fix missing param description
* Remove unnessary use
* Pass down the category of the received plugins.
* Store the recommended plugins for the different categories separately.
* Pass down the category.
* Add new functions to get by category.
* set categories
* Handle new object for posts and recommendations
* Update tests
* Finish off implementing category param for data store resolvers
* Update js tests
* Fix incorrect reference to kb component
Co-authored-by: Dan Bitzer <danielbitzer@gmail.com>
* Add installAndActivatePlugins method to plugin store
* Use new install/actiate method in Plugins component
* Refactor benefits page to use await
* Refactor business details page to use new install method
* Replace Plugins component in Jetpack CTA
* Format and throw errors in plugin data store
* Add generic response handling function
* Add default error messages to plugin API
* Add Learn more about Product Settings note
* Fix logic around new merchants vs existing, fix product count
* Refactor to use admin_init action, use WC_Product_Query
* Don't try to count products when recording added product date
* Rename function
* Completely drop recording product add times and just use oldest product date instead
* Remove onboarding update check, checking the profile is sufficient
Co-authored-by: Rebecca Scott <me@becdetat.com>