* Add product attribute filter to Orders report config.
* Add attribute args to Orders report controller.
* Include attribute filters in orders report query.
* Add attribute args to Orders Stats report controller.
* Include attribute filters in orders report stats query.
* Add test for product attribute filter in orders report.
* Add tests for invalid parameter values.
* Add tests for product attribute filter in order stats endpoint.
* Fix tests for PHP 5.6 and WC 3.8.x.
* Update Shipping Banner to use installPlugins since installPlugin has been removed.
* Fix shipping banner compatibility with WCS 1.24.
* Update metabox content to match WC 4.5 metaboxes.
* Add error logging to remote inbox notifications data source poller
* Change DataSourcePoller to use WC_Logger
* Remove test feed
* Tidy up log messages
Co-authored-by: Rebecca Scott <me@becdetat.com>
* Remove store page creation during new onboarding experience
* Remove onboarding feature flag
* Add back in onboarding feature flag to enable feature loading
* Add onboarding task status API endpoint.
* Add task status to onboarding data store.
* Update appearance task to use onboarding store for status info.
* Update main task list component to use onboarding data store for status info.
* Clear onboarding status info "cache" when setting shipping rates in the task list.
* Clear onboarding status info "cache" when enabling payment methods from the task list.
* Fix onboarding data store reducer tests.
* Clean up redundant code, nest task status settings under new key for hydration.
* Include tasks status in onboarding data hydration.
* Update tax task to use onboarding data store for status info.
* Avoid continually rehydrating onboarding data.
* Refactor payment task method retrieval to use onboarding data store.
* Fix bug with disappearing appearance tax steps.
* Update appearance completion faster by using hydrated onboarding value.
* Avoid PHP warnings when onboarding isn't enabled.
* Remove unused imports.
* Add export ID to success response and fix typos in endpoint schema.
* Initial export data store.
Allows for starting export, but not checking progress.
* Use new export data store in analytics report tables.
* Remove defunct report export wc-api files.
* Apply review feedback from another wp.data PR.
* Use getResourceName() util for more DRYness.
* Fix linter error.
* Add response status code to fetchWithHeaders control.
* Use HTTP status rather than response body to determine success.
* Fix tests.
* Remove unused import from actions.
* Delete customer lookup rows when their corresponding user is deleted.
* Asynchronously delete users from customer lookup table.
* Add user deletion test case.
* Fix user deletion test.
* Add initial notes data store using wp data
* Cache individual note queries
* Update notes undo endpoint to batch update endpoint
* Allow batch updates of notes
* Add requesting state
* Update components to use new note store
* Remove old notes store from wc-api
* Get note IDs from json and validate data in REST API
* Add an updating state to each note
* Throw errors in actions so they can be caught by client
* Add store reducer tests
* Handle PR feedback
* Fix failing tests
* Don't set inbox panel visibility while batch updating
* Move woocommerce block to external dependencies
* Fix industry args type in REST API
* Only allow object for industry param
* Fix onboarding industry object shape in test case.
Co-authored-by: Jeff Stieler <jeff.m.stieler@gmail.com>
* Don't require package tag or file comment inside src
* Removed package tag from files inside src
* Fixed tests directory in phpcs.xml.dist
* Fixed usage of package tag
* Fixed new classes
* Fixed coding standards
* Fixed coding standards in tests
* Remove task list payment actions
* Check that the payments task has been marked complete in checkout note
* Track payments completion via enabled gateways
* Allow toggling to unfinish task when no payments enabled
* Set up profile completed action
* Stub out the steps
* Only run if Jetpack is installed and connected
* Return if WCS isn't active
* Return unless physical is selected as a product type
* Return if there are existing shipping zones
* Shipping labels are enabled when WCS is installed
* Set up free local shipping
* Comment for the profiler complete action
* By default there is no international/catch-all shipping method set up
* Add review shipping settings note
* Record tracks event
* Fix logic
* Add unit test around setting up free local shipping
* Rename some functions
* Use countries service to get all countries
* Drop duplicated possibly_add_note()
* Check the old value when determining if the profiler has completed
* Fall back to country code if country name doesn't exist
* Use admin_url fn to build up URL
Co-authored-by: Rebecca Scott <me@becdetat.com>
* Require the correct autoloader file.
* Include composer file when updating version numbers.
* Add notice for development builds not using JETPACK_AUTOLOAD_DEV.
* Only bump version numbers when preparing a release.
* Lint detail solved
This commit resolves a small lint warning in the file Loader.php
* Removed "profiler" from menu
This commit removes the item "profiler" from the menu.
Co-authored-by: Fernando Marichal <contacto@fernandomarichal.com>
* Added Test Checkout note
This commit adds a note to test the checkout process
# Conflicts:
# src/Events.php
# src/FeaturePlugin.php
* Replaced method "site_url" with "wc_get_page_permalink"
* Removed products with state draft verifcation from "check_task_completion"
This commit modifies the code to not set the products task list item as done when they have state draft.
* Added published date control
This commit adds a product published date control to the note
* Half-hour calculation changed
* Typo error corrected
Co-authored-by: Fernando Marichal <contacto@fernandomarichal.com>
Use sanitize_text_field instead of sanitize_title_with_dashes to clean up the theme name during theme activation and installation. Remove another sanitize_title because it also need to allow non-lowercase slug as well. Use the sanitized theme name as slug for:
- Checking whether current theme is allowed to activate
- Checking whether current theme is one of installed theme
- Slug of theme on Onboarding::get_theme_data() method.
* Add monthly product prices to OBW
* Remove description for physical and download products
* Use pills in product selection step of OBW
* Add missing translation wrapper, also convert some spaces to tabs
* Add pill to changelog
* Change pills to medium gray text and border
* Make everything line up correctly on smaller viewports
* Get the styles closer to the design
* Breakpoint to set font size to 11px
Co-authored-by: Rebecca Scott <me@becdetat.com>
* Handle admin note data read exceptions.
* Add test for notes datastore encountering an exception in read().
* Fix WC_Admin_notes::get_note() helper.
* Throw exception from WC_Admin_Note class instead.
Mimicking WC_Order, etc.
* Use helper method to retrieve existing notes.
* Use self for static calls.
* Check for valid note before updating in WCPay note class.
* Don't specify columns when fetching notes from the database.
* Fix deprecated function call.
Avoid calling deprecated set_icon() when passing data to WC_Admin_Note constructor.
* Added skip profiler functionality
This commit adds the skip profiler functionality, leaving the Home screen `Store details` as incomplete.
# Conflicts:
# client/task-list/tasks.js
* Unit tests repaiared
* Added OBW page
This commit makes the necessary changes to add an OBW page
# Conflicts:
# client/profile-wizard/index.js
* Event name changed
This commit renames the event name we were recording since it was wrong.
* Redirection modified
This commit modifies the way we do redirection
# Conflicts:
# client/profile-wizard/index.js
* Removed `profiler` feature flag
* Removed `profiler` feature flag
This commit removes the `profiler` feature flag
* Added error handling for `updateProfileItems`
This commit adds error handling for the method `updateProfileItems`
* Update client/profile-wizard/index.js
Co-authored-by: Matt Sherman <matt.sherman@automattic.com>
* Removed "throw" from "then"
* Update client/dashboard/index.js
Co-authored-by: Joshua T Flowers <joshuatf@gmail.com>
* Update client/profile-wizard/index.js
Co-authored-by: Joshua T Flowers <joshuatf@gmail.com>
* Modified redirection URL
This commit modifies the redirection URL.
# Conflicts:
# client/task-list/tasks.js
# Conflicts:
# client/profile-wizard/index.js
* Removed the variable "lastStep" and the related logic.
* Removed change of state for variable "skipped"
* Added error trowing to onboarding actions
This commit adds error trowing to onboarding actions
* Removed response handling for `updateProfileItems`
* Added default value for "profileItems" in Homescreen and Dashboard
* Removed `step` from OnboardingProfile and test
This commit removes the `step` from OnboardingProfile.php and from tests
Co-authored-by: Fernando Marichal <contacto@fernandomarichal.com>
Co-authored-by: Matt Sherman <matt.sherman@automattic.com>
Co-authored-by: Joshua T Flowers <joshuatf@gmail.com>
* Allow Jetpack plugin to be manipulated via API from the home screen.
Fixes issue where Jetpack's installation status wasn't visible if the OBW was skipped.
* Remove incorrect arguments from add_filter() call.
* Add WooCommerce Admin Facebook Marketing Expert Note Provider.
* Fix number of orders and move cheaper check to be first
* Update title
* Update note title and copy
* Adjust orders_last_month check
* Return ids to speed up query
* Use PluginsHelper
* Removed "woocommerce_task_list_payments" from note.
This commit removes the use of "woocommerce_task_list_payments" from the note "Set up payments"
* Removed task list check
This commit removes an out of date check we were doing to show the note
Co-authored-by: Fernando Marichal <contacto@fernandomarichal.com>
* Add dismiss button as task list item option
* Add option to undo task dismissal
* Record modal dismissal event
* Add transition animation to list items
* Use key for list items instead of index
* Remove dismissed tasks on recompleting profiler steps
* Install task to update selected notes if they need to be changed
* Add comment for filter
* Add some extra comments to explain things a little better
* Undo my implementation of modifying notes
* Add a SQL script to update deactivate plugin note type
Co-authored-by: Rebecca Scott <me@becdetat.com>
* Make API init class a singleton.
For aid in testing.
* Use static Jetpack methods instead of the REST API to get active modules.
Include some helper methods for easier testing.
* Fix Jetpack module mocking in indicators test.
* Check for the expected Jetpack module method before calling.
* Ensure active Jetpack modules is an array.
* Build: Only load non-minified js assets when they are available in the build.
* Avoid multiple Loader instances.
* Fix feature filter name in test bootstrap.
* Fix feature filter used in Loader tests.
Co-authored-by: Jeff Stieler <jeff.m.stieler@gmail.com>
* Added new note type
This commit adds a new note type `survey`. The note is deleted after calling its CTA.
* Now using const from WC_Admin_Note
* Now using const from WC_Admin_Note in WC_Admin_Notes too
* Moved note deletion from NoteActions to WC_Admin_Notes
This commit moves the note deletion from NoteActions to WC_Admin_Notes. Also adds a hook to clean up actioned survey notes.
Co-authored-by: Fernando Marichal <contacto@fernandomarichal.com>
* Add simple business extension install form input
* Install all business extensions when checked
* Add popover with business extension benefits
* Remove errant hasInstallActivateError setState call
* Show popover on click and record event
* Added event prop to be recorded
This commit adds the event prop `screen` to `wcadmin_wcadmin_inbox_action_click`
* Getting screen name from referer
Now the we get the screen name from the referer
* The screen name is not being sent anymore to the API
The screen name is not sent anymore to the API. Also, the $screen_name is set as empty in the API to make the method more defensive.
* Created method `get_screen_name`
This commit moves the code related to getting the screen name to a specific method.
* Added screen name recording for individual posts
This commits adds screen name recording for individual posts
Co-authored-by: Fernando Marichal <contacto@fernandomarichal.com>
* Add (failing) test for deleted coupon amounts in reporting.
* Always sync an ID into the order-coupon lookup table.
* Don't remove coupon data from order analytics when the coupon is deleted.
* Fix coupon ID lookup from order item metadata.
* Allow negative coupon_id in the lookup table.
Representing deleted coupons.
* Handle deleted coupons when gathering extended info.
* Add more tests for deleted coupon handling.
* Handle deleted coupons in coupons report table.
* Fix lint errors.
* Fix: Actioned inbox notifications now are visible
This commit fixes the actioned inbox notifications, now they are always visible.
* Fixed getUnreadNotes method
This commit fixes the getUnreadNotes method since it was returning the wrong information.
* Added two @todo
This commit adds two @todo referring to a few changes to do after implementing pagination
Co-authored-by: Fernando Marichal <contacto@fernandomarichal.com>
This commit adds a new notification to customize the client store with WooCommerce blocks
Co-authored-by: Fernando Marichal <contacto@fernandomarichal.com>
* Count total unique customers instead of new/returning in order stats
* Add customer name to table instead of customer type
* Add customer total to segments
* Update tests for new stats
Co-authored-by: Joshua Flowers <joshuatf@gmail.com>
* Add Insight note
* Change actioned_label to actioned_text
* Move actioned text up a level
* Fix comment
* Rename insight class
* Add deny action to insight first sale and fix the button actions
* fix spacing
* Tweak conditions in the inbox card
Co-authored-by: Rebecca Scott <me@becdetat.com>
* Don't attempt order download information retrieval when the product has been deleted.
* Handle display of download names when product has been deleted.
* Add deleted product test case for download report endpoint.
* Fix date() usage in download report tests.
* 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>
* 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>
* Initial user preferences custom hook (wc meta).
* Organize dependencies.
* Specify dependencies in useSelect() call.
* Remove specifying preference keys.
There's currently no performance benefit to be had.
* Add HoC for hydrating current user data.
* Add user prefs update method.
* Export user prefs hook and HoC in data package.
* Handle error condition when updating user preferences.
* Use closure to get user ID for prefs update.
* Refactor analytics dashboard to use new user hook.
* Refactor ReportTable component to use new user hook.
* Move prop access to top of function component.
* Add todo for potential manual resolution logic.
* Refactor DashboardCharts component to use new user preferences hook.
* Move code out of functional component where possible.
* Fix chart interval query property.
* Refactor Leaderboards component to use new user preferences hook.
* Move code out of functional component where possible.
* Refactor Inbox panel to use user prefs hook.
@todo - updating last read isn't working.
* Use user prefs hook in StatsOverview component.
* Export user preferences store name.
* Use new store for unread inbox indicator.
* Hydrate current user data higher up in the app.
* Update "last read" timestamp in inbox panel.
* Fix StatsOverview test.
* Remove unused dispatch method from StorePerformance component.
* Remove now defunct user methods from wc-api spec.
* Add tests for isRequesting.
* JSON decode WC meta on updated user object.
* Test user prefs retrieval and save.
* Remove todo comment.
* Use user prefs hook in Jetpack install CTA on homepage.
* Changed some API responses
This commit adds changes to some API responses
* Changed "woocommerce_task_list_complete" loading in frontend
* Updated "$migrated_options" array
This commit updates "$migrated_options" array and adds a deletion control
* Changed "taskListComplete" in customizable.js
Co-authored-by: Fernando Marichal <contacto@fernandomarichal.com>
* Added new notification to ask about starting a dropshipping business.
This commit adds a new notification to ask the client if they are considering starting a dropshipping business.
* Bugfix: corrected some problems in this note's logic
This commit adds a new validation for onboarding_profile, it removes an incorrect validation and changes the action's name
Co-authored-by: Fernando Marichal <contacto@fernandomarichal.com>
* Correct set parent path when wc-admin registered page is used as a breadcrumb parent
* Add some tests for PageController->get_breadcrumbs()
* Fix typos
* Poll and persist specs
* Process specs into admin notes
* Add send at time rule processor
* Fix style issues
* Clear actions before recreating them to avoid dupes
* Trigger the RINDS engine when a plugin is activated
* Unit test SendAtTimeRuleProcessor
* Implement plugins activated rule processor
* Don't throw exception for unrecognised rule type. Also unit test around this.
* add url_is_action_query to tell whether to wrap the URL in wc_admin_url() call or not
* Add NOT rule
* revert change to install.php
* Drop unimplemented resend after dismissal rule
* Add OR rule
* Explicitly make "fail" a type of rule that can be applied to a spec
* Add plugin version rule processor
* Tidy up, don't need to pass $spec everywhere
* Remove meta record for action state - not really needed
* Move spec runner into it's own class, add some checks around re-unactioning a note
* Replace if..else with switch
* Just update the option
* Check that the JSON coming in is an array
* Change OR rule to accept an array of operands
* Add Pass rule processor
* Fix specs that are initially not published
* Rename send at rule to publish after
* Add publish before rule
* Remove unused interface
* Can't use PHP7's anonymous classes
* New notification: How to draw attention to your online store
* Add feature flag for rule-base inbox notes
* rename everything to RemoteInboxNotifications from RINDS
* Fix merge fail
* fix test
* Change preunactioned to pending
* Move feature flag check into Events.php
* Refactor reading a data source
* Rename poll_data_sources function
* Refactor EvaluateAndGetStatus::evaluate to take the rule evaluator directly
* Check that the response body exists
* Add validation and defensive checks
* Add rule processor interface
* Update note created time on status change
* Move non-test dependencies into processor constructors
* Update to proposed live URL
* Remove setting icon as it's being deprecated
Co-authored-by: Rebecca Scott <me@becdetat.com>
* Get Jetpack stats appearing on the home page
* Update hidden stats in stats overview test
* Make jetpack stats appear by default
* Add reportUrlType to dashboard store performance area
Co-authored-by: Rebecca Scott <me@becdetat.com>
* Inbox notification: Added layout changes (https://github.com/woocommerce/woocommerce-admin/pull/4256)
* Added notes layout and image to the API
Added note layout and note image to the API and the DB
* Unit test modified
Unit test where modified to adapt them to the new elements
* Changed the frontend following the new designs.
The fronted was changed to follow the new inbox messages design.
* Changed default layout type in DB
* Added all the requested visual element
Changed the cards' js, css and actions to achieve the visual requirements
* Added "layout" and "image" to inboxQuery
* Modal confirmation buttons repaired
* Added "layout" and "image" to docs examples.
* Removed "updateNote" from action.js
Removed "updateNote" from action.js, I left it by mistake.
* Spelling error corrected
The button text "Dismiss all message" was corrected
* noteName removed and icon added to make code reviewing easier
This commit removes the "noteName" from card.js and adds the icon to make code reviewing easier
* Dismiss action button refactor
Refactor of the dismiss action button in the InboxNoteCard class
* Removed unnecessary control
* Destructured all the note properties
* Colors replaced by existing variable
* Removed setting of layout and image in the creation of the notes
* Removed blank lines added by mistake
* Close dismiss dropdown when clicking away from the popover.
* Prevented the closing of the inbox panel with an action in the modal
* Added small design changes
* Removed unused "Gridicon" import
* Prevent showing the image tag when the layout is blank
* The method name getDismissButton was changed to getDismissConfirmationButton
* Removed unnecessary vendor-prefixed properties
* Improved note filtering in unreadNotes method
* Update client/header/activity-panel/panels/inbox/style.scss
Co-authored-by: Joshua T Flowers <joshuatf@gmail.com>
* Update client/header/activity-panel/panels/inbox/style.scss
Co-authored-by: Joshua T Flowers <joshuatf@gmail.com>
* Update client/header/activity-panel/panels/inbox/style.scss
Co-authored-by: Joshua T Flowers <joshuatf@gmail.com>
* Update client/header/activity-panel/panels/inbox/style.scss
Co-authored-by: Joshua T Flowers <joshuatf@gmail.com>
Co-authored-by: Fernando Marichal <contacto@fernandomarichal.com>
Co-authored-by: Joshua T Flowers <joshuatf@gmail.com>
* Inbox notification: Remove icons (https://github.com/woocommerce/woocommerce-admin/pull/4258)
* Info icon removed from inbox notifications
The info icon was removed from inbox notifications
# Conflicts:
# src/Notes/DataStore.php
* Removed "icon" from inboxQuery
* Tests repeared
Some problems with the unit tests were repaired in this commit
# Conflicts:
# docs/examples/activity-panel-inbox.md
# Conflicts:
# tests/api/admin-notes.php
* Removed icon from card.js
Co-authored-by: Fernando Marichal <contacto@fernandomarichal.com>
* Inbox notification: Add dismiss functionality (https://github.com/woocommerce/woocommerce-admin/pull/4262)
* Added is_deleted param to soft delete
# Conflicts:
# src/API/Notes.php
# src/Install.php
# src/Notes/DataStore.php
# src/Notes/WC_Admin_Note.php
# src/Notes/WC_Admin_Notes.php
# tests/api/admin-notes.php
* Added the Dismiss functionality
# Conflicts:
# client/header/activity-panel/panels/inbox/action.js
* Where clause repeared
* Added Snackbar after action.
* API modified to dismiss notes
* Small refactor in "get_item" method
This commit adds a small refactor in "get_item" method to use "prepare_note_data_for_response"
* Added missing logic to Dismiss note
This commit adds missing client logic to Dismiss note.
# Conflicts:
# client/header/activity-panel/panels/inbox/action.js
# client/header/activity-panel/panels/inbox/card.js
* Moved the delete action to WC_Admin_Notes.php
The delete action was moved to WC_Admin_Notes.php to follow the pattern.
* Added changes to dismiss messages
This commit addeds changes to the messages soft delete.
* DataStore.php repaired
This commits adds some code that was deleted by mistake and the param "is_deleted" has been escaped.
* Spelling error corrected
The button text "Dismiss all message" was corrected
* Repaired "get_notes_where_clauses" method
A problem with the deleted notes was repaired
* Added a comment to DataStore.php
* Stopped sending the "dismissType" to action.js
The "dismissType" is not sent to action.js anymore.
* Bugfix: now the method get_notes_with_name also returns deleted notes
* Bugfix: repaired empty notification list
This commit repairs a bug that happens when there isn't anything in the inbox notification list
* Small refactor to not use "some" Lodash method anymore
* Small refactor in rednderNotes method
* Added check to set_layout
* Added small refactor to delete_all_notes method
* Fixed code comment error
* Bugfix: repaired the "delete_note" call
* Inbox notification: Added layout changes (https://github.com/woocommerce/woocommerce-admin/pull/4256)
* Added notes layout and image to the API
Added note layout and note image to the API and the DB
* Unit test modified
Unit test where modified to adapt them to the new elements
* Changed the frontend following the new designs.
The fronted was changed to follow the new inbox messages design.
* Changed default layout type in DB
* Added all the requested visual element
Changed the cards' js, css and actions to achieve the visual requirements
* Added "layout" and "image" to inboxQuery
* Modal confirmation buttons repaired
* Added "layout" and "image" to docs examples.
* Removed "updateNote" from action.js
Removed "updateNote" from action.js, I left it by mistake.
* Spelling error corrected
The button text "Dismiss all message" was corrected
* noteName removed and icon added to make code reviewing easier
This commit removes the "noteName" from card.js and adds the icon to make code reviewing easier
* Dismiss action button refactor
Refactor of the dismiss action button in the InboxNoteCard class
* Removed unnecessary control
* Destructured all the note properties
* Colors replaced by existing variable
* Removed setting of layout and image in the creation of the notes
* Removed blank lines added by mistake
* Close dismiss dropdown when clicking away from the popover.
* Prevented the closing of the inbox panel with an action in the modal
* Added small design changes
* Removed unused "Gridicon" import
* Prevent showing the image tag when the layout is blank
* The method name getDismissButton was changed to getDismissConfirmationButton
* Removed unnecessary vendor-prefixed properties
* Improved note filtering in unreadNotes method
* Update client/header/activity-panel/panels/inbox/style.scss
Co-authored-by: Joshua T Flowers <joshuatf@gmail.com>
* Update client/header/activity-panel/panels/inbox/style.scss
Co-authored-by: Joshua T Flowers <joshuatf@gmail.com>
* Update client/header/activity-panel/panels/inbox/style.scss
Co-authored-by: Joshua T Flowers <joshuatf@gmail.com>
* Update client/header/activity-panel/panels/inbox/style.scss
Co-authored-by: Joshua T Flowers <joshuatf@gmail.com>
Co-authored-by: Fernando Marichal <contacto@fernandomarichal.com>
Co-authored-by: Joshua T Flowers <joshuatf@gmail.com>
* Inbox notification: Remove icons (https://github.com/woocommerce/woocommerce-admin/pull/4258)
* Info icon removed from inbox notifications
The info icon was removed from inbox notifications
# Conflicts:
# src/Notes/DataStore.php
* Removed "icon" from inboxQuery
* Tests repeared
Some problems with the unit tests were repaired in this commit
# Conflicts:
# docs/examples/activity-panel-inbox.md
# Conflicts:
# tests/api/admin-notes.php
* Removed icon from card.js
Co-authored-by: Fernando Marichal <contacto@fernandomarichal.com>
* Improved error handling for the set_layout method
* Bugfix: fixed error handling clicks inside dropdowns
* Bugfix: repaired dropdown onBlur handler
This commit repairs a weird behavior that the dropdown onBlur handler method had sometimes.
* Text error changed
Co-authored-by: Fernando Marichal <contacto@fernandomarichal.com>
Co-authored-by: Joshua T Flowers <joshuatf@gmail.com>
* Inbox notification: Add undo snackbar button after deletion (https://github.com/woocommerce/woocommerce-admin/pull/4281)
* Added undo snakbar button for a single note
# Conflicts:
# client/wc-api/notes/mutations.js
# src/Notes/DataStore.php
# src/Notes/WC_Admin_Notes.php
* Added a button to undo the deletion of all notes
# Conflicts:
# client/wc-api/notes/operations.js
# src/API/Notes.php
* Code adapted to make code reviewing easier
There was some code that also was present in another PR, that code was removed to make code reviewing easier.
* UnitTest added
This commit adds some unit tests
* Added verification for API response
* Added casting to $note_id
* Inbox notification: Added layout changes (https://github.com/woocommerce/woocommerce-admin/pull/4256)
* Added notes layout and image to the API
Added note layout and note image to the API and the DB
* Unit test modified
Unit test where modified to adapt them to the new elements
* Changed the frontend following the new designs.
The fronted was changed to follow the new inbox messages design.
* Changed default layout type in DB
* Added all the requested visual element
Changed the cards' js, css and actions to achieve the visual requirements
* Added "layout" and "image" to inboxQuery
* Modal confirmation buttons repaired
* Added "layout" and "image" to docs examples.
* Removed "updateNote" from action.js
Removed "updateNote" from action.js, I left it by mistake.
* Spelling error corrected
The button text "Dismiss all message" was corrected
* noteName removed and icon added to make code reviewing easier
This commit removes the "noteName" from card.js and adds the icon to make code reviewing easier
* Dismiss action button refactor
Refactor of the dismiss action button in the InboxNoteCard class
* Removed unnecessary control
* Destructured all the note properties
* Colors replaced by existing variable
* Removed setting of layout and image in the creation of the notes
* Removed blank lines added by mistake
* Close dismiss dropdown when clicking away from the popover.
* Prevented the closing of the inbox panel with an action in the modal
* Added small design changes
* Removed unused "Gridicon" import
* Prevent showing the image tag when the layout is blank
* The method name getDismissButton was changed to getDismissConfirmationButton
* Removed unnecessary vendor-prefixed properties
* Improved note filtering in unreadNotes method
* Update client/header/activity-panel/panels/inbox/style.scss
Co-authored-by: Joshua T Flowers <joshuatf@gmail.com>
* Update client/header/activity-panel/panels/inbox/style.scss
Co-authored-by: Joshua T Flowers <joshuatf@gmail.com>
* Update client/header/activity-panel/panels/inbox/style.scss
Co-authored-by: Joshua T Flowers <joshuatf@gmail.com>
* Update client/header/activity-panel/panels/inbox/style.scss
Co-authored-by: Joshua T Flowers <joshuatf@gmail.com>
Co-authored-by: Fernando Marichal <contacto@fernandomarichal.com>
Co-authored-by: Joshua T Flowers <joshuatf@gmail.com>
* Inbox notification: Remove icons (https://github.com/woocommerce/woocommerce-admin/pull/4258)
* Info icon removed from inbox notifications
The info icon was removed from inbox notifications
# Conflicts:
# src/Notes/DataStore.php
* Removed "icon" from inboxQuery
* Tests repeared
Some problems with the unit tests were repaired in this commit
# Conflicts:
# docs/examples/activity-panel-inbox.md
# Conflicts:
# tests/api/admin-notes.php
* Removed icon from card.js
Co-authored-by: Fernando Marichal <contacto@fernandomarichal.com>
* Inbox notification: Add dismiss functionality (https://github.com/woocommerce/woocommerce-admin/pull/4262)
* Added is_deleted param to soft delete
# Conflicts:
# src/API/Notes.php
# src/Install.php
# src/Notes/DataStore.php
# src/Notes/WC_Admin_Note.php
# src/Notes/WC_Admin_Notes.php
# tests/api/admin-notes.php
* Added the Dismiss functionality
# Conflicts:
# client/header/activity-panel/panels/inbox/action.js
* Where clause repeared
* Added Snackbar after action.
* API modified to dismiss notes
* Small refactor in "get_item" method
This commit adds a small refactor in "get_item" method to use "prepare_note_data_for_response"
* Added missing logic to Dismiss note
This commit adds missing client logic to Dismiss note.
# Conflicts:
# client/header/activity-panel/panels/inbox/action.js
# client/header/activity-panel/panels/inbox/card.js
* Moved the delete action to WC_Admin_Notes.php
The delete action was moved to WC_Admin_Notes.php to follow the pattern.
* Added changes to dismiss messages
This commit addeds changes to the messages soft delete.
* DataStore.php repaired
This commits adds some code that was deleted by mistake and the param "is_deleted" has been escaped.
* Spelling error corrected
The button text "Dismiss all message" was corrected
* Repaired "get_notes_where_clauses" method
A problem with the deleted notes was repaired
* Added a comment to DataStore.php
* Stopped sending the "dismissType" to action.js
The "dismissType" is not sent to action.js anymore.
* Bugfix: now the method get_notes_with_name also returns deleted notes
* Bugfix: repaired empty notification list
This commit repairs a bug that happens when there isn't anything in the inbox notification list
* Small refactor to not use "some" Lodash method anymore
* Small refactor in rednderNotes method
* Added check to set_layout
* Added small refactor to delete_all_notes method
* Fixed code comment error
* Bugfix: repaired the "delete_note" call
* Inbox notification: Added layout changes (https://github.com/woocommerce/woocommerce-admin/pull/4256)
* Added notes layout and image to the API
Added note layout and note image to the API and the DB
* Unit test modified
Unit test where modified to adapt them to the new elements
* Changed the frontend following the new designs.
The fronted was changed to follow the new inbox messages design.
* Changed default layout type in DB
* Added all the requested visual element
Changed the cards' js, css and actions to achieve the visual requirements
* Added "layout" and "image" to inboxQuery
* Modal confirmation buttons repaired
* Added "layout" and "image" to docs examples.
* Removed "updateNote" from action.js
Removed "updateNote" from action.js, I left it by mistake.
* Spelling error corrected
The button text "Dismiss all message" was corrected
* noteName removed and icon added to make code reviewing easier
This commit removes the "noteName" from card.js and adds the icon to make code reviewing easier
* Dismiss action button refactor
Refactor of the dismiss action button in the InboxNoteCard class
* Removed unnecessary control
* Destructured all the note properties
* Colors replaced by existing variable
* Removed setting of layout and image in the creation of the notes
* Removed blank lines added by mistake
* Close dismiss dropdown when clicking away from the popover.
* Prevented the closing of the inbox panel with an action in the modal
* Added small design changes
* Removed unused "Gridicon" import
* Prevent showing the image tag when the layout is blank
* The method name getDismissButton was changed to getDismissConfirmationButton
* Removed unnecessary vendor-prefixed properties
* Improved note filtering in unreadNotes method
* Update client/header/activity-panel/panels/inbox/style.scss
Co-authored-by: Joshua T Flowers <joshuatf@gmail.com>
* Update client/header/activity-panel/panels/inbox/style.scss
Co-authored-by: Joshua T Flowers <joshuatf@gmail.com>
* Update client/header/activity-panel/panels/inbox/style.scss
Co-authored-by: Joshua T Flowers <joshuatf@gmail.com>
* Update client/header/activity-panel/panels/inbox/style.scss
Co-authored-by: Joshua T Flowers <joshuatf@gmail.com>
Co-authored-by: Fernando Marichal <contacto@fernandomarichal.com>
Co-authored-by: Joshua T Flowers <joshuatf@gmail.com>
* Inbox notification: Remove icons (https://github.com/woocommerce/woocommerce-admin/pull/4258)
* Info icon removed from inbox notifications
The info icon was removed from inbox notifications
# Conflicts:
# src/Notes/DataStore.php
* Removed "icon" from inboxQuery
* Tests repeared
Some problems with the unit tests were repaired in this commit
# Conflicts:
# docs/examples/activity-panel-inbox.md
# Conflicts:
# tests/api/admin-notes.php
* Removed icon from card.js
Co-authored-by: Fernando Marichal <contacto@fernandomarichal.com>
* Improved error handling for the set_layout method
* Bugfix: fixed error handling clicks inside dropdowns
* Bugfix: repaired dropdown onBlur handler
This commit repairs a weird behavior that the dropdown onBlur handler method had sometimes.
* Text error changed
Co-authored-by: Fernando Marichal <contacto@fernandomarichal.com>
Co-authored-by: Joshua T Flowers <joshuatf@gmail.com>
* Stopped sending the "dismissType" to action.js
The "dismissType" is not sent to action.js anymore.
# Conflicts:
# client/header/activity-panel/panels/inbox/card.js
Co-authored-by: Fernando Marichal <contacto@fernandomarichal.com>
Co-authored-by: Joshua T Flowers <joshuatf@gmail.com>
* Bugfix: solved problem when a note was undismissed
There was a problem with the undismiss functionality. When a note was undismissed, it always was recovered with "plain" layout. This commit solves this problem.
* Inbox notification: add event recording (https://github.com/woocommerce/woocommerce-admin/pull/4320)
* Added events recording
This commit adds events recording to the inbox notifications
# Conflicts:
# client/header/activity-panel/panels/inbox/index.js
* Added 'home_screen' verification
Changed recorded name, now when the client is in the WooCommerce 'home' page we record 'home_screen' instead of 'wc-admin'.
* Added a naming fix and a new prop to the recordEvent
* bugfix: added control before interaction with bodyNotificationRef
* Added more unit tests for new endpoints
This commit adds tests for deleting a single note and for deleting all the notes, both without permission.
* Modified variable name
* Refactor: prop rename and small logic change
* Screen name getter moved into the InboxNoteCard
This commit moves the screen name getter inside the InboxNoteCard.
# Conflicts:
# client/header/activity-panel/panels/inbox/index.js
* Removed "screen" from state
Co-authored-by: Fernando Marichal <contacto@fernandomarichal.com>
* Refactor in admin-notes unit tests
Some unnecessary controls were removed from the admin-notes unit tests
* Indentation fixed in Install.php. Replaced spaces with tabs.
* Inbox notification: added new placeholder and empty card (https://github.com/woocommerce/woocommerce-admin/pull/4379)
* Added a new placeholder and an empty card
This commit adds a new placeholder and a new empty card to the inbox panel
# Conflicts:
# client/header/activity-panel/panels/inbox/index.js
# client/header/activity-panel/panels/inbox/style.scss
* Added border to read notes
* Improved note filtering in unreadNotes method and validNotes
# Conflicts:
# client/header/activity-panel/panels/inbox/index.js
* Actions render refactored
The actions render was refactored in InboxNoteCard component
* Refactor of InboxPanel component
The methods getUnreadNotesCount and hasValidNotes were separated from the InboxPanel component
# Conflicts:
# client/header/activity-panel/panels/inbox/index.js
* Refactor inbox panel subtitle classes
* Added changes for when a note is undismissed
This commit adds the requested changes in behavior and design for when a note is dismissed.
# Conflicts:
# client/header/activity-panel/panels/inbox/index.js
* Bugfix: Added key to itemlist
The InboxNotePlaceholder is shown as an itemlist but it didn't have a key. This commit adds it.
* Removed unnecessary validation
* Refactored actionList map
This commit adds a refactor to the actionList map
* Changes to the getUndoDismissRequesting functionality
This commit adds a few changes to the getUndoDismissRequesting functionality
* Changed className prop
* Changed other className prop
* Modified InboxPanel rendering
* Removed unnecessary method in placeholder.js
* Simplified the card.js renderActions method
* Change renderActions return in card.js
Co-authored-by: Fernando Marichal <contacto@fernandomarichal.com>
* Inbox notification: add client unit tests (https://github.com/woocommerce/woocommerce-admin/pull/4386)
* Added client unit tests
* Added test cases for getUnreadNotesCount and hasValidNotes
* Corrected typo error
* Removed Enzyme and added React Testing Library
* Removed unnecessary param
Co-authored-by: Fernando Marichal <contacto@fernandomarichal.com>
* Resolved some conflicts with master
* Marketing note test repaired
This commit repairs the marketing note test
* Added note type 'marketing' to delete all functionality
* Removed set_icon method from some notes and docs
* Added set_icon method as deprecated to prevent errors.
Co-authored-by: Fernando Marichal <contacto@fernandomarichal.com>
Co-authored-by: Joshua T Flowers <joshuatf@gmail.com>
* Added new notification to ask about migrating from Shopify.
This commit adds a new notification to ask the client if they want to migrate from Shopify to WooCommerce.
* Modified action's name
Co-authored-by: Fernando Marichal <contacto@fernandomarichal.com>
* Add method to send WC profile data after profiler completion
* Send profiler data if complete on a newly connected site
* Check for put method existence before using the helper API
* Only send wc profile data if opted into tracking
* Update task list to closer match new designs.
* Update TaskList placeholder to match the new design.
* Hook up store details task click.
* Don't show "skip" prompt for task list on new home screen.
* Update time estimates for tasks.
* Add progress indicator to TaskList.
* Use null container for store details task.
* Fix progress bar styling.
* Just use card menu for TaskList dismissal.
* Don't show TaskList on analytics overview if homepage feature is enabled.
* Initial refactor of TaskList to use WP card.
* Style TaskList items and card header.
* Style "hide" button for TaskList.
* Don't show TaskList after it's completion.
* Don't show TaskList placeholder when options are still loading.
Avoid a potential flash of the placeholder without showing the TaskList.
* Fix border radius on progress bar.
* Fix TaskList header style with homepage feature disabled.
* Remove defunct function.
* Remove unnecessary import.
* Some minor color tweaks (https://github.com/woocommerce/woocommerce-admin/pull/4436)
* Colors
* Only show time estimation for incomplete tasks
* Don't show chevron on completed tasks.
Co-authored-by: Jeff Stieler <jeff.m.stieler@gmail.com>
* Preload task list completed option, show placeholder when loading.
* Fix alignment of "hide this" button.
Co-authored-by: James Koster <james@jameskoster.co.uk>
* Allow plugins API to install multiple plugins at once
* Update wpdata to handle installing multiple plugins and errors
* Remove client-side error message switch
* Update plugin tests for multiple plugins param
* Update plugins API to WP standards
* Add error for non-allowed plugins instead of silently failing
* Allow error handling for individual plugins
* Fix up js tests for new API response
* Add installed plugin to response on successful install
* Add note traits to check for existence and generic conditions
* Add new note type for marketing notes
* Delete marketing notes when opted out
* Add tests for marketing notes
* Add getInAppPurchaseUrl lib function
* Implement getInAppPurchaseUrl for marketing tab
* Include the directory with the wccom-site param
* use getInAppPurchaseUrl helper function in onboarding CartModal component
* Fix 'addQueryArgs' is defined but never used
* Fix Missing JSDoc @return description
* Make connectNonce setting a global setting rather than a marketing once
Co-authored-by: Jason Conroy <jason@findingsimple.com>
* Release: 1.2.0
* Updates per feedback.
* Get installed plugins from new plugin settings object. (https://github.com/woocommerce/woocommerce-admin/pull/4357)
* Bumping version numbers
* synch package-lock.json with master
Co-authored-by: Jeff Stieler <jeff.m.stieler@gmail.com>
* Move allowed report analytics data to separate function
* Add function to retrieve allowed Jetpack module endpoints
* Fix API urls
* Add number format as default for jetpack modules
* Add module permissions and format to array
* Add filter for returned data from performance indicators API
* Filter jetpack stats by queried dates
* Fix empty date query filtering
* Mock the Jetpack API response
* Add tests for Jetpack stats in allowed endpoints
* Add tests for filtering Jetpack stats based on time
* Add tests for default args
* New notification: How to draw attention to your online store
# Conflicts:
# src/FeaturePlugin.php
* Get the option from the arguments
Co-authored-by: Rebecca Scott <me@becdetat.com>
* Document the `woocommerce_admin_is_loading` filter.
* Prevent dashboard from being visible during ProfileWizard chunk load.
* Delay removing loading class rather than adding full screen class prematurely.
* Remove welcome note
* Remove store notice setting note
* Remove review your experience note
* Add tests for delete_notes_with_name
* Add filter support so that other code can add notes to be deleted on upgrade.
* Homwpage: add stats overview stat toggle
* toggle stats
* fix
* tests
* better hook name
* clean up
* add back in Fragment
* remove extra prop
* better test name
* Save payment skipped and event timestamp to options
* Add payments note
* Convert payments task timestamp to seconds
* Skip payments note if skip timestamp is not set
* Use lazy loading to split up the size of the js downloaded
* Use lazy loading to split up the size of the js downloaded
* Add Moment Timezone plugin to reduce size of data file.
* Lazy load header panels and use Dashicons for faster loading
* Load assets from the correct publicPath
* Load assets from the correct publicPath
* PHP cs fixes
* Fix missing quotes on string literal.
* Fix PropType warning for lazy loaded component.
* Separate the task list and dashboard chunks.
* Lazy load dashboard sections.
* Restore original icons and reduce size by importing only the icons needed
* Lazy load alerts to save more Kb on initial load
* Minify built JS in production mode.
* Add preload tags for WC Admin assets. (https://github.com/woocommerce/woocommerce-admin/pull/4162)
* Fix linting errors.
* Add modified UnminifiedWebpackPlugin.
* Produce minified and unminified bundles for all builds.
* Remove unused variable from webpack config.
* Run unminify after sourcemap generation.
* Only hook after optimization if we're using a devtool.
* Add minification suffix in Loader::get_url().
* Lazy load OBW on new home screen.
* Move OBW style up a level to layout.
* Hydrate ProfileWizard independently of withSelect and withDispatch
* Fix order of composition and fallback function when using hydration.
Co-authored-by: Jeff Stieler <jeff.m.stieler@gmail.com>
Co-authored-by: Paul Sealock <psealock@gmail.com>
* Fix sorting to push Storefront to the top of the theme list
* Add test to ensure Storefront is sorted in get_themes()
* copy paste cleanup
* Refactor sorting logic.
* Fix linting errors
* Updates per feedback.
* Add check for products property
* Fix for 5.6 CI.
* Oh hey another CI fix
Co-authored-by: Timmy Crawford <timmydcrawford@gmail.com>
* Add base nav component
* Check if current screen is WC registered page
* Add core menu items
* Add param for menu items to migrate and hide old menu items
* Add body classes for wc navigation
* Check capability before adding menu items
* Add submenu items to frontend component
* Hide wc nav behind option
Co-authored-by: Joshua Flowers <joshuatf@gmail.com>
* Add allowMarketplaceSuggestions to woocommerce_shared_settings
* Convert to functional component
* Hide ReccomendedExtensions card if opted out from marketing suggestions
* Changed email marketing note and the old filter was removed
The email marketing note was modified. Also, the old filter was removed.
* This note is not using NoteTraits anymore.
The NoteTraits reference was removed because the note is not using it anymore.
Co-authored-by: Fernando Marichal <contacto@fernandomarichal.com>
* Plugins DataStore: decouple from onboarding (https://github.com/woocommerce/woocommerce-admin/pull/4048)
* Plugins DataStore: Add client side store
* change active_plugins to public static function
* don't change shape of allowed plugins
* Set a max word length for the installed extension descriptions
* Improve InstalledExtensions layout for tablet and mobile
Mobile still needs work…
* Align product icon to top
* Tweak WelcomeCard mobile appearance
* Fix alignment
* Use EmptyContent component when there are no knowledge base posts
* Reduce transient timeout to 15 mins when remote get fails
* Satisfy phpcs
* Satisfy jslint
* woocommerce/woocommerce-admin#3793 create admin note if Jetpack plugin doesn't work during OBW
* Move slug logic into the note creator class
* Also allow WooCommerce Services plugin when creating note
* rename possibly_add
* Rename note service class for jetpack/woocommerce services
* Remove (by actioning) notes when the Jetpack or WooCommerce Services plugins are activated
* Add todo around using a filter to make onboarding plugin API more generic
* Create admin note if activation fails
* Fix callback, don't know how that got through...
* Install from the note using a callback fn rather than redirecting back to the OBW
* Remove .orig file
* Move WC_Admin_Notes_Filters action hooks into WC_Admin_Notes_Install_Jetpack_And_WooCommerce_Services_Plugin
* Remove return values from plugin install function
* Simplify how plugin installation triggers actioning the note
* Use better icon in Jetpack/WooCommerce Services note
* Add space to note copy
* Shorten some names
* Only action the note if both plugins are activated
Co-authored-by: Rebecca Scott <me@becdetat.com>
* Add method to retrieve all synced order statuses.
* Determine what unregistered order statuses we have and add to client-side settings object.
* Stop filtering out unregistered statuses from analytics settings.
* Add unregistered statuses to analytics settings fields.
* Bugfix on payments step in CBD flow
The `array_search` method was changed to `in_array`
* After pressing Connect a new tab opens with the Square webpage
* Updated behavior for non CBD Square payment connection
* Square option's name updated
* Replaced <p> tag with a <div> tag
Since there was a `validateDOMNesting` warning because we weren't adding only text inside a <p> tag, the `p` tag was changed to a `div`.
Co-authored-by: Fernando Marichal <contacto@fernandomarichal.com>
* Add support for additional partner extensions to installed extensions
* Use correct variable name
* Add codisto support url
* Fix hubspot svg
- Fixes orange color as per brand guide
- Reduces file size from 120kb to 1kb
* Replace Google logo with vector SVG
* Fix AutomateWoo icon
* Fix Amazon Ebay svg icon
Co-authored-by: Daniel Bitzer <danielbitzer@gmail.com>
This commit adds the "woocommerce_admin_onboarding_homepage_template" filter, enabling themes/plugins to filter the default homepage template created by the WooCommerce onboarding process.
* Pass specified totals/intervals fields parameter to the Order Stats Query.
* Only request stats used in render for report summaries and charts.
Implement Orders as an example.
* Specify stats fields for all report requests.
* Add 'fields' parameter handling to all stats endpoint controllers.
* Reduce stats fields requested by dashboard charts.
* Added hook to delete woocommerce_onboarding_homepage_post_id
Added hook to delete woocommerce_onboarding_homepage_post_id when the homepage is deleted.
* Moved post type check further up in the method
Co-authored-by: Fernando Marichal <contacto@fernandomarichal.com>
* Add WC Pay to allowed plugins
* Add WC Pay Note to Inbox
* Don't update WC Pay note content
Actioned notes are hidden from the Inbox it turns out, so there's
no need to update the content to reflect that the WC Pay plugin
has been installed.
* Add WC pay note only after April 14
Instead of only adding the Install Now button in April. Only
add the note so that the Install now button is always available
and generally, the note is more useful and actionable because
the plugin is actually available.
* Fix WC Pay note install action
* Check if WC Pay is active or installed
Not just if the plugin files are available. This addresses both the
case where the plugin may be active an in a different folder name,
and where the plugin may have been installed but is not active,
likely because it's been deactivated.
* Add Marketing feature flag
* Add marketing page and menu item
* Register marketing page with layout controller
* Add initial marketing cards
* Add max-width to marketing overview page
* Add initial marketing WelcomeCard component
* Make marketing welcome card permanently dismiss
* Add a readme for the marketing page components
* Record tracks event when marketing welcome dismissed
* Match design width
* Add welcome image and initial styles
* Use gridicon for close button
* Fix whitespace
* Add PluginsHelper::get_plugin_data()
* Add initial Marketing\InstalledExtensions class
* Preload installed marketing extensions data
* Tweak extension statuses
* Add InstalledExtensionRow component
* Add initial extension data to InstalledExtensions card
* Refactor PluginsHelper::get_plugin_data method
Using the new get_plugin_path_from_slug method
* Ensure get_plugins() function is available for PluginsHelper
* Simplify using PluginsHelper method
* Add MailChimp configured status logic
* Add links to InstalledExtensionRow component
* Add key prop to extensions list
* Setup styles for InstalledExtensions card
* Display nothing if no installed extensions
* Add InstalledExtensions::get_allowed_plugins()
* Setup Marketing Overview API controller
* Add /activate-plugin marketing endpoint
* Add more extensions URL props
* Add Facebook extension configured status logic
* Update Facebook extension URL props
* Fix extenion data logic
* Move component into it’s own directory
* Setup /marketing/overview/recommended endpoint
* Initial marketing page card header styles
* Add basic extension data to RecommendedExtensions
* Use color as variable
* Tweak card header padding for design
* Add basic styling to RecommendedExtensions card
* settingsUrl is not available if the plugin is not active
* Add /marketing/overview/installed-plugins REST endpoint
* Add basic activation functionality to InstalledExtensions component
* Don’t throw error on success
* Add MVP data store for installed extensions card
* Add core dark blue color variable
* Add styles for installed extensions card
* Move knowledge-base component to its own directory
* Pull recommended marketing plugins from remote test site
* Hide description when configured
As per design
* Tweak colors based on design
* Finish off styling for RecommendedExtensions
* Limit recommended extensions to 6 items
* Add error handling to RecommendedExtensions card
* Rename ‘copy’ extension prop
* Add marketing button component to match design
* Create ProductIcon component for marketing
* Add InstalledExtension icons
* Fix icon image paths
* Add ProductIcon to InstallExtensionRow
* Final styling to installed extensions card row
* Knowledge base card placeholders
* Fix missing icons when plugin not activated
* Remove logging
* Tweak array structure to ensure we have an array in JS
and not an object
* Refactor KnowledgeBase marketing component
- We don’t need loop through every post when rendering, just pick the posts we need
- Remove unused classes
* Move padding from each slide to the container
* Improve slider animations by absolute positioning the slides
* Reduce the slider animation timeout and add a note
* Add in-app purchase flow url params for recommended extensions
* Fix slider animation
* Reset slider height on window resize
* Short slider animation, fix double margin on smaller screens
* Add initial marketing/knowledge-base endpoint
* Pull knowledge base posts from API
* Rename welcome card dismiss tracks event
* Record event on recommended product click
* Recond onclick events for installed extensions card
* Record event when carousel navigation clicked
* img elements must have an alt prop
* Remove import that is never used
* use camelCase
* Decode HTML entities from API call
* Remove unused container div
* Add card loading state
* Add images to knowledge base card
* Link knowledge base posts
* Use the Pagination component rather than duplicate it’s functionality
* Clean up and rename knowledge base slider
* Clean knowledge base CSS and update responsive styles for single post slide
* Add a README for button component
* Add README for product icon component
* Add initial readme for Slider component
* Add correct image sizes to knowledge base slider, finalize styles
* Fix extension link urls
* Resolve some code formatting issue
* Bind class click methods to this
* Wrap nodes in Fragment
* Fix wccom-back path
* Add placeholder author and gravatar
Default avatar url size returned from the API is currently set to 96 so I’ve done a simple replace with 16
* Fix style-lint expected new line
* Add docblock for get_knowledge_base_posts()
* Setup data store for marketing to handle installedExtensions card
* Fix function names
“Activating” not “installing”
* Move welcome card component to its own dir
* IconButton component is going to be deprecated
ref: https://github.com/WordPress/gutenberg/pull/19299
* Support multiple activating plugins in the data store
* Rename extension to plugin for consistency
* Add propTypes to component
* Rename data-store/ to data/
* Fix import paths
* Extract isActivatingPlugin logic into datastore
* Move data store selectors into own file
* POST requests are not cached
* Export apiFetch action
* Don’t wrap API response in object
* Implement data store for recommended extensions
* Implement data store for marketing knowledge base
* Tidy getRecommendedPlugins resolver
* Try a cross browser cover/crop image effect to fit proposed design
And help fit longer titles in
* Add caught errors to handler
* Adjust positioning so watermater is displayed
* InstalledExtensions phpcs fixes
* Marketing phpcs fixes
* Alignment fix
* MarketingOverview phpcs fixes
* Missing full stop
* Update breadcrumbs to use new approach
* Fix style lint issues
* Record `marketing_knowledge_article` track event on knowledge base post click
* Import apiFetch and controls from @wordpress/data-controls
* Hex color to lowercase
* Remove duplicate method after rebase
* Use new showPageArrowsLabel rather than hide with CSS
* Fix blurry avatars on hidpi displays
* Hide avatar if URL is falsy
* Replace test author data with live data
* Combine conditionals into ternary
* Combine conditionals into ternary
* Simplify class column logic
* Only preload option and component settings in the admin
* Fix isActivatingPlugin not updating
Component was not re-rendeding.
* Use querySelector over getElementsByClassName
* Hide Marketing Welcome Card immediately on click
* Use create-a-ticket url for supportUrl and make that the default
* Add getInstalledPlugins resolver with preloaded data
* Revert "Add getInstalledPlugins resolver with preloaded data"
This reverts commit b8b127ec6411bef15616576b3bb189dc31777c13.
* Load plugin data in a separate request after activation
* Update welcome image
* Don’t return plugin data in the activation request.
* A space is required before closing bracket
* Update Jest config to gracefully handle static assets
Ref: https://jestjs.io/docs/en/webpack#handling-static-assets
* Remove unused onExit property
* Remove placeholder README
* Use prop directly
* yield createNotice
* Add note to indicate which Category
* Increase transient time to 3 days
* Use $gap-small
* Add proptype
* Add debounce to slider height resize listener
* Clean up isLoading logic
* Dont show image elements if image data is empty
* Open knowledge base posts in a new window
* Add “noreferrer”
* Turn the tab on in all env
Co-authored-by: Daniel Bitzer <danielbitzer@gmail.com>
* Add feature flag for wcpay (https://github.com/woocommerce/woocommerce-admin/pull/3958)
* Add card to payments task for WooCommerce Payments (https://github.com/woocommerce/woocommerce-admin/pull/3978)
* Add card to payments task for WooCommerce Payments
* Add missing plugin and settings PHP constants for woocommerce payments
* Add endpoint to return url to kick off wcpay
* Fix incorrect option name
* I can haz purple with white text, plz
* Linkify TOS, settings
* Recommend wcpay when visible; move wcpay to list top
* Test for wcpay feature flag
* Improved handling of feature flag
* If the user is an agency, include wcpay docs link on card
* Reverse agency logic, LOL
* Camel case fillRule etc
* Turn off wcpay for core and plugin for now
Co-authored-by: David Stone <david@nnucomputerwhiz.com>
Co-authored-by: Chris Shultz <chris.shultz@automattic.com>
Co-authored-by: Harris Wong <harris.wong@a8c.com>
* Abstract WP plugin code into a PluginsHelper class
We plan to use these methods in the Marketing tab.
* Add PluginsHelper::is_plugin_active()
* Add PluginsHelper::is_plugin_installed()
* Add PluginsHelper::get_plugin_data()
* Add PluginsHelper::get_plugin_path_from_slug()
* Refactor PluginsHelper::get_plugin_data method
Using the new get_plugin_path_from_slug method
* Refactor is_plugin_installed and is_plugin_active
Also adds support for plugin slugs or paths as parameters.
* Ensure get_plugins() function is available for PluginsHelper
* Ensure plugin path is a string before checking if installed/active
* PHPCS fixes
* Add initial unit tests for PluginsHelper
* Check plugin data array keys rather than all values
Will make it less fragile when Woo plugin data changes
* Fix typos
Co-authored-by: Daniel Bitzer <danielbitzer@gmail.com>
* Added note to Personalize Store
Added note to Personalize Store, 5 days after registration or when the user completes the task list.
* Lint repeared
Lint error repeared.
* Moved homepage_id < 0 check to OnboardingTasks.php
Co-authored-by: Fernando Marichal <contacto@fernandomarichal.com>
add data store for settings using wp.data
add use-select-with-refresh example
replace fresh-data usage with new settings data store for settings page
Add data package
move to packages
Fix isDirty after save
Add isBusy to primary button when saving
update Readme
remove comment
readme to use useSelect
Revert "update Readme"
This reverts commit 7402fd49b8f384fde5878e0bee0616f0a87bb4f6.
Data Layer: Settings page to use Settings store (https://github.com/woocommerce/woocommerce-admin/pull/3430)
* Data Layer: Settings store as source of truth for settings page
This reverts commit 7402fd49b8f384fde5878e0bee0616f0a87bb4f6.
* fixup
* save on reset
* non mutable constants
* add set/getSettings
* save using setSettings
* separate HOC
* cleanup
* remove settingsToData
* withHydration
* remove withSettings HOC
* renmove useSettins for now
* withSettingsHydration updates
* Revert "withSettingsHydration updates"
This reverts commit f2adf108fbe19b574978fea5925a1a18e7ed3007.
* rename withSettingsHydration
* redo withSettingsHydration simplification
* restore
* useSettings
* render using useSettings
* handleInputChange working
* get setIsDirty working
* saving works
* reset and cleanup
* cleanup
* use snake case on hook files
* use clearIsDirty
* Avoid mutation on setting update
* remove @todo
* persiting -> isPersisting
* better reducer ternaries
* add wcSettings as arg to withSettingsHydration
reset package-lock
Settings: split out mutable wcAdminSettings (https://github.com/woocommerce/woocommerce-admin/pull/3675)
Settings: handle async settings groups (https://github.com/woocommerce/woocommerce-admin/pull/3707)
Before 0.10.0 notes had a default content_data of array(). If stored in the database, these notes would be unable to be loaded. This adds some resiliency to the loading so that invalid content_data fields don't break WC_Admin_Note::set_content_data().
Co-authored-by: Christopher Allford <christopher.allford@automattic.com>
* Make WooCommerce breadcrumbs use WooCommerce branding if it is installed
* Undo everything
* Whoops, add missing reverted code
* Push 'WooCommerce' out to breadcrumbs from the server except for where it is built up on the client
* Pass translated 'WooCommerce' down from the server to the front end
* Fix comment
* Use `admin_url` to build up the URL
Co-Authored-By: Ron Rennick <ron@ronandandrea.com>
* Use admin_url()
Co-Authored-By: Ron Rennick <ron@ronandandrea.com>
* Show WooCommerce breadcrumb on analytics pages
* Stop double appending the admin URL to the root WooCommerce breadcrumb url
Co-authored-by: Rebecca Scott <me@becdetat.com>
Co-authored-by: Ron Rennick <ron@ronandandrea.com>
* Refactor logic for showing dashboard reports and tasklist
* Check for complete option status instead of visible tasks in dashboard
* Update task list status on task list completion
* Track task completion event server-side on option add
* Add option to track previousdly completed events
* Track previously untracked tasks on option update
* remove replace_actionscheduler_store_class function from master
* remove AS store class file
* reuse variable
* Fix test helper queue action cancellation for AS 2.x.x.
* Remove WPPostStore logic from SchedulerTraits.
* Remove dead queue code from WC_Admin_Notes.
Missed in https://github.com/woocommerce/woocommerce-admin/pull/3662.
Co-authored-by: Paul Sealock <psealock@gmail.com>
Co-authored-by: Jeff Stieler <jeff.m.stieler@gmail.com>
* Add on Cash on Delivery method to payment methods
* Add direct bank transfer method
* Update enabled paymet methods in markConfigured
* Add missing bacs property
* Add bacs styling
* Add isConfigured property to all payment methods
* Remove payment configuration checks from server side
* Add isEnabled flags to all payment methods
* Add payment method toggle methods
* Extract payment methods
* Fix update options selectors
* Add error handling for payment method updates
* Remove configured from saved option
* Add event when payment is toggled
* Check if payment option exists before checking config
* Only fetch PayPal connection URL when plugin is active
* Only fetch Stripe connection URL when plugin is active
* Onboarding: business step: add Google Ads extension install
* Updated extension slug etc to match the extension
* Fix a couple of slugs that were missed
* Remove extra div that was breaking because of an unrelated change (reused class name)
Co-authored-by: Bec Scott <me@becdetat.com>
* Add new payment method cards
* Refactor payment methods
* Track payment configuration and completion client-side
* Record tasklist_payment_connect_method event in markConfigured
* Record event on payment setup
* Add recommended payment method ribbon
* Return to payments task even when previously configured
* Script that hides or shows menu items
* Hook up buttons to task list, hook up options to onboarding-experience to set up the menu
* Fix some little code style issues
* Remove LinkButton in favour of the existing Button in @wordpress/components
* Remove reference to removed style file
* Move menu experience script to /client/wp-admin-scripts to match current style
* Only load the onboarding menu experience script if onboarding is enabled
* Localise some strings
* Separate the "Setup" link from the existing items to avoid conflicts with extensions that modify the menu
* Use the item key instead of title to report back completed tasks
* Change from skip_option to reason to make this easier to grok
* Use existing woocommerce_task_list_hidden option instead of creating a new one
* Tweak options to get menu experience working again
* Simplify skip actions logic
* Preload woocommerce_task_list_do_this_later option
* Nicer event key names
* Clean up the styling
* Remove wcSettings.onboarding check from the task items list in `customizable`
* Remove spinner from customizable
* Fix translated string for WooCommerce menu setup anchor
* Use predef color instead of a hard-coded hex code
* Remove superfluous ={ true } from markup
Co-authored-by: Rebecca Scott <me@becdetat.com>
* Manually call on_plugins_loaded after loading plugins for testing
* Update import tests to cancel all pending actions in new AS tables
* Fix deprecated next method in AS
* Remove priority queue test for unused priority in AS 3.0
* Check only for pending status actions in batch queue tests
* Add cancel_actions_by_group method to WPPostStore
* Add method to check for next blocking job time
* Force delete scheduled actions on older versions of AS
* Try: Moving Customers to main Woo Menu (https://github.com/woocommerce/woocommerce-admin/pull/3632)
* Only add onboarding settings on wc-admin pages when task list should be shown. (https://github.com/woocommerce/woocommerce-admin/pull/3722)
* Use cron for unsnoozing admin notes (https://github.com/woocommerce/woocommerce-admin/pull/3662)
* Use wp-cron for admin note snoozing.
* Remove "unsnooze" scheduled action.
* Use correct version.
* Avoid using deprecated method for unscheduling actions.
* Onboarding: Fix toggle tracking events (https://github.com/woocommerce/woocommerce-admin/pull/3645)
* Fix errant wcadmin prefix on event name
* Track the onboarding toggle on the option in case enable_onboarding isn't used
* Move toggle actions to separate function
* Move onboarding actions
* Move onboarding filters
* Move help tab updates to add_toggle_actions
* Only run onboarding actions when enabled
* Onboarding: Add tracks events when profiler steps are completed (https://github.com/woocommerce/woocommerce-admin/pull/3726)
* Add tracks for store profiler step completion
* Record event when profiler is completed
* Ensure continue setup loads the onboarding profiler (https://github.com/woocommerce/woocommerce-admin/pull/3646)
* 'All that include' option removed when input field is empty (https://github.com/woocommerce/woocommerce-admin/pull/3700)
* 'All that include' option removed when input field is empty
Added a control to check that when the input field 'Search by customer name' is empty, the 'All that include' option is not appearing.
* Const name improved
The constant name hasValues was changed to optionsHaveValues (more descriptive)
* Fix select text alignment (https://github.com/woocommerce/woocommerce-admin/pull/3723)
* Stock panel indicator - cache and use lookup tables. (https://github.com/woocommerce/woocommerce-admin/pull/3729)
* Stock panel indicator - cache and use lookup tables.
* Revise query, clear transient on product update.
* Fix error, ht Josh.
* Checklist: Remove sideloaded images to reduce build size, take 2 (https://github.com/woocommerce/woocommerce-admin/pull/3731)
* Remove homepage template images.
* Use other-small on all industries, adjust text color.
* Remove background dim and opacity set to 0
* Fix/3631 (https://github.com/woocommerce/woocommerce-admin/pull/3730)
* Added CBD as an industry type
CBD was added as an industry type in API
* Industries options modified
Modified the industries options. Now we are able to choose if we will use an input or not in the option.
* API control changed for industries.
API control changed for industries. Now it accepts the data type we need.
* Added input in Industries list for the option "Other"
Added an input for the option "Other" in the industries list
* Added suggested changes in review comments.
* Added data preparation for recordEvent
* Changed variable to snake_case
The variable "industriesWithDetail" was changed to "industries_with_detail" (snake_case)
* Onboarding: Create homepage without redirect (https://github.com/woocommerce/woocommerce-admin/pull/3727)
* Add link to edit homepage instead of redirect
* Add busy state to homepage creation button
* Publish homepage on create via API
* Update homepage notice to show on first post update
* Update homepage creation notice per design
* Record event on customize homepage
* Set homepage to frontpage on creation
* Add deactivation note for feature plugin (https://github.com/woocommerce/woocommerce-admin/pull/3687)
* Add version deactivation note
* Add the note to deactivate if the version is older than the current WC version
* Deactivate wc admin feature plugin on action click
* Add notes version hooks
* change the Package class namespace to exclude from standalone autoloader
* add use statement for FeaturePlugin
* add note explaining namespace
* use wc-admin-deactivate-plugin note name
* Rename file and class to WC_Admin_Notes_Deactivate_Plugin
Co-authored-by: Ron Rennick <ron@ronandandrea.com>
Co-authored-by: Paul Sealock <psealock@gmail.com>
* Add Travis tests on GH for release branch (https://github.com/woocommerce/woocommerce-admin/pull/3751)
* Add Travis tests on GH for release branch
* fix linter errors
* ActivityPanels.php -> use public static functions
* Remove free text Search option when no query exists (https://github.com/woocommerce/woocommerce-admin/pull/3755)
* Revert changes in woocommerce/woocommerce-admin#3700
* Don't add free text search if no query exists
* Add tests for Search without query
* Add test for showing free text search option
* Fix image sideloading for store industries. (https://github.com/woocommerce/woocommerce-admin/pull/3743)
* Fix image sideloading for store industries.
Data format changed in https://github.com/woocommerce/woocommerce-admin/pull/3730
* Fix industry image sideload in cases where the count is less than requested.
* Be backwards compatible with the old industry data format.
* Added event props to identify stores with WCS and Jetpack installed (https://github.com/woocommerce/woocommerce-admin/pull/3750)
* Added event props to identify stores with WCS and Jetpack installed
Also, added Jeckpack connected status
* Improved variable name
* Simplified method
Simplified method. "intersection" check was removed
* Tests errors repeared
The method "clear_low_out_of_stock_count_transient" now is static.
* OBW: fix sideloading image test error (https://github.com/woocommerce/woocommerce-admin/pull/3762)
* Release 0.26.0 changes (https://github.com/woocommerce/woocommerce-admin/pull/3753)
* add deactivation hook to Package.php (https://github.com/woocommerce/woocommerce-admin/pull/3770)
* Add active version functions (https://github.com/woocommerce/woocommerce-admin/pull/3772)
* add active version functions to Package.php
Co-authored-by: Joshua T Flowers <joshuatf@gmail.com>
* 0.26.1 changes (https://github.com/woocommerce/woocommerce-admin/pull/3773)
* Customers Report: fix missing report param in search (https://github.com/woocommerce/woocommerce-admin/pull/3778)
* Product titles include encoded entities (https://github.com/woocommerce/woocommerce-admin/pull/3765)
* Stripped HTML from product titles and decoded before displaying them
Stripped html from product titles and entities are decoded before displaying them
* Stripped HTML from product titles and decoded in Stock report
Stripped html from product titles and entities are decoded before displaying them. Now in Stock report
* Added support for HTML tags and encoded entities on product titles
Added support for HTML tags and encoded entities on filtered product list, dropdown menus and tag names.
Also, strip_tags() function was replaced with wp_strip_all_tags() instead.
* strip_tags() function was replaced with wp_strip_all_tags() instead.
* Added control for a variable
Added control for "item->data" before applying wp_strip_all_tags method.
* pre-commit changes
* Test text corrected
* Enable taxes on automatic tax setup (https://github.com/woocommerce/woocommerce-admin/pull/3795)
* Update Country Labeling to Match Core (https://github.com/woocommerce/woocommerce-admin/pull/3790)
* Updated country labeling
Country labeling on Customer Report was updated
* Updated country labeling in other files
* remove .jitm-card notice padding (https://github.com/woocommerce/woocommerce-admin/pull/3814)
* OBW Connect: Fix requesting state (https://github.com/woocommerce/woocommerce-admin/pull/3786)
* OBW Connect: Fix requesting state
* pass down setIsPending
* setIspending propType
* defaultProps
* test
* Revert "test"
This reverts commit e921092b19401931cc1aec8ee84fa53c53b67f36.
* better comparison for redirect
* Fixes Taxes Report search bug and adds initial documentation. (https://github.com/woocommerce/woocommerce-admin/pull/3816)
* Initial Taxes Report documentation.
* Fix taxes endpoint search parameter.
* OBW: Fix retry plugin install button disappearing (https://github.com/woocommerce/woocommerce-admin/pull/3787)
* OBW: Fix retry plugin install btn disappearing
* try suggestion
* Revert "try suggestion"
This reverts commit 5b9386957a501ac3e729e5f16b0ee71c9d792859.
* Fix special character escaping in search. (https://github.com/woocommerce/woocommerce-admin/pull/3826)
* Properly prepare/escape special characters in Product search.
* Properly prepare/escape special characters in Coupon search.
* Properly prepare/escape special characters in Tax code search.
* Fix tracking on migrated options (https://github.com/woocommerce/woocommerce-admin/pull/3828)
* Don't track onboarding toggle if migrating options
* Prevent WC_Tracks from recording event post types not yet registered
* Activity Panels: Remove W Panel (https://github.com/woocommerce/woocommerce-admin/pull/3827)
* Remove W Notif Panel.
* Add back in trapping logic, and hide on non-embed pages.
* add npm run test:zip command (https://github.com/woocommerce/woocommerce-admin/pull/3823)
* add npm run test:zip command
* 1.0.0 release changes🎉 (https://github.com/woocommerce/woocommerce-admin/pull/3831)
* 1.0.0 release changes🎉
* changelog
* 0.26.1 changelog
* Add Report Extension Example: Add default props to ReportFilters (https://github.com/woocommerce/woocommerce-admin/pull/3830)
* ReportFilters component: Add sane defaults
* styles
* add required column
* add left join to sku ordering (https://github.com/woocommerce/woocommerce-admin/pull/3845)
* Deal with lint errors, and improperly merged files
* regenerate package-lock.json
* attempting to resolve package lock conflict.
Co-authored-by: Jeff Stieler <jeff.m.stieler@gmail.com>
Co-authored-by: Joshua T Flowers <joshuatf@gmail.com>
Co-authored-by: Ron Rennick <ron@ronandandrea.com>
Co-authored-by: Fernando <ultimoround@gmail.com>
Co-authored-by: edmundcwm <edmundcwm@gmail.com>
Co-authored-by: Paul Sealock <psealock@gmail.com>
* Modified question in the business step of the onboarding
* Added more options in the competitors list
Onboarding - Business step -> Add more options in the competitors list.
* Added an option input field to Onboarding, business step
To the Onboarding's business step added an input field when the user selects "Other".
* Added suggested improvements
* Added new param to "test_schema" test
Co-authored-by: Fernando Marichal <contacto@fernandomarichal.com>
* Try: Moving Customers to main Woo Menu (https://github.com/woocommerce/woocommerce-admin/pull/3632)
* Only add onboarding settings on wc-admin pages when task list should be shown. (https://github.com/woocommerce/woocommerce-admin/pull/3722)
* Use cron for unsnoozing admin notes (https://github.com/woocommerce/woocommerce-admin/pull/3662)
* Use wp-cron for admin note snoozing.
* Remove "unsnooze" scheduled action.
* Use correct version.
* Avoid using deprecated method for unscheduling actions.
* Onboarding: Fix toggle tracking events (https://github.com/woocommerce/woocommerce-admin/pull/3645)
* Fix errant wcadmin prefix on event name
* Track the onboarding toggle on the option in case enable_onboarding isn't used
* Move toggle actions to separate function
* Move onboarding actions
* Move onboarding filters
* Move help tab updates to add_toggle_actions
* Only run onboarding actions when enabled
* Onboarding: Add tracks events when profiler steps are completed (https://github.com/woocommerce/woocommerce-admin/pull/3726)
* Add tracks for store profiler step completion
* Record event when profiler is completed
* Ensure continue setup loads the onboarding profiler (https://github.com/woocommerce/woocommerce-admin/pull/3646)
* 'All that include' option removed when input field is empty (https://github.com/woocommerce/woocommerce-admin/pull/3700)
* 'All that include' option removed when input field is empty
Added a control to check that when the input field 'Search by customer name' is empty, the 'All that include' option is not appearing.
* Const name improved
The constant name hasValues was changed to optionsHaveValues (more descriptive)
* Fix select text alignment (https://github.com/woocommerce/woocommerce-admin/pull/3723)
* Stock panel indicator - cache and use lookup tables. (https://github.com/woocommerce/woocommerce-admin/pull/3729)
* Stock panel indicator - cache and use lookup tables.
* Revise query, clear transient on product update.
* Fix error, ht Josh.
* Checklist: Remove sideloaded images to reduce build size, take 2 (https://github.com/woocommerce/woocommerce-admin/pull/3731)
* Remove homepage template images.
* Use other-small on all industries, adjust text color.
* Remove background dim and opacity set to 0
* Fix/3631 (https://github.com/woocommerce/woocommerce-admin/pull/3730)
* Added CBD as an industry type
CBD was added as an industry type in API
* Industries options modified
Modified the industries options. Now we are able to choose if we will use an input or not in the option.
* API control changed for industries.
API control changed for industries. Now it accepts the data type we need.
* Added input in Industries list for the option "Other"
Added an input for the option "Other" in the industries list
* Added suggested changes in review comments.
* Added data preparation for recordEvent
* Changed variable to snake_case
The variable "industriesWithDetail" was changed to "industries_with_detail" (snake_case)
* Onboarding: Create homepage without redirect (https://github.com/woocommerce/woocommerce-admin/pull/3727)
* Add link to edit homepage instead of redirect
* Add busy state to homepage creation button
* Publish homepage on create via API
* Update homepage notice to show on first post update
* Update homepage creation notice per design
* Record event on customize homepage
* Set homepage to frontpage on creation
* Add deactivation note for feature plugin (https://github.com/woocommerce/woocommerce-admin/pull/3687)
* Add version deactivation note
* Add the note to deactivate if the version is older than the current WC version
* Deactivate wc admin feature plugin on action click
* Add notes version hooks
* change the Package class namespace to exclude from standalone autoloader
* add use statement for FeaturePlugin
* add note explaining namespace
* use wc-admin-deactivate-plugin note name
* Rename file and class to WC_Admin_Notes_Deactivate_Plugin
Co-authored-by: Ron Rennick <ron@ronandandrea.com>
Co-authored-by: Paul Sealock <psealock@gmail.com>
* Add Travis tests on GH for release branch (https://github.com/woocommerce/woocommerce-admin/pull/3751)
* Add Travis tests on GH for release branch
* fix linter errors
* ActivityPanels.php -> use public static functions
* Remove free text Search option when no query exists (https://github.com/woocommerce/woocommerce-admin/pull/3755)
* Revert changes in woocommerce/woocommerce-admin#3700
* Don't add free text search if no query exists
* Add tests for Search without query
* Add test for showing free text search option
* Fix image sideloading for store industries. (https://github.com/woocommerce/woocommerce-admin/pull/3743)
* Fix image sideloading for store industries.
Data format changed in https://github.com/woocommerce/woocommerce-admin/pull/3730
* Fix industry image sideload in cases where the count is less than requested.
* Be backwards compatible with the old industry data format.
* Added event props to identify stores with WCS and Jetpack installed (https://github.com/woocommerce/woocommerce-admin/pull/3750)
* Added event props to identify stores with WCS and Jetpack installed
Also, added Jeckpack connected status
* Improved variable name
* Simplified method
Simplified method. "intersection" check was removed
* Tests errors repeared
The method "clear_low_out_of_stock_count_transient" now is static.
* OBW: fix sideloading image test error (https://github.com/woocommerce/woocommerce-admin/pull/3762)
* Release 0.26.0 changes (https://github.com/woocommerce/woocommerce-admin/pull/3753)
* add deactivation hook to Package.php (https://github.com/woocommerce/woocommerce-admin/pull/3770)
* Add active version functions (https://github.com/woocommerce/woocommerce-admin/pull/3772)
* add active version functions to Package.php
Co-authored-by: Joshua T Flowers <joshuatf@gmail.com>
* 0.26.1 changes (https://github.com/woocommerce/woocommerce-admin/pull/3773)
* Customers Report: fix missing report param in search (https://github.com/woocommerce/woocommerce-admin/pull/3778)
* Product titles include encoded entities (https://github.com/woocommerce/woocommerce-admin/pull/3765)
* Stripped HTML from product titles and decoded before displaying them
Stripped html from product titles and entities are decoded before displaying them
* Stripped HTML from product titles and decoded in Stock report
Stripped html from product titles and entities are decoded before displaying them. Now in Stock report
* Added support for HTML tags and encoded entities on product titles
Added support for HTML tags and encoded entities on filtered product list, dropdown menus and tag names.
Also, strip_tags() function was replaced with wp_strip_all_tags() instead.
* strip_tags() function was replaced with wp_strip_all_tags() instead.
* Added control for a variable
Added control for "item->data" before applying wp_strip_all_tags method.
* pre-commit changes
* Test text corrected
* fix linting issues
* fix mis-merged changes
* Update jsdoc
Co-Authored-By: Paul Sealock <psealock@gmail.com>
Co-authored-by: Timmy Crawford <timmyc@users.noreply.github.com>
Co-authored-by: Jeff Stieler <jeff.m.stieler@gmail.com>
Co-authored-by: Joshua T Flowers <joshuatf@gmail.com>
Co-authored-by: Fernando <ultimoround@gmail.com>
Co-authored-by: edmundcwm <edmundcwm@gmail.com>
Co-authored-by: Paul Sealock <psealock@gmail.com>
* Add PayFast payment gateway option for sites in South Africa
* Fix PayFast extension in the whitelist
* Configure PayFast from within the task list
* Triggering hook
* Show PayFast payment method at the bottom of the options
* When configuring the PayFast extension set the store currency to ZAR
* Remove withSelect from compose function
* Only do one call to update the settings
* Try: Moving Customers to main Woo Menu (https://github.com/woocommerce/woocommerce-admin/pull/3632)
* Only add onboarding settings on wc-admin pages when task list should be shown. (https://github.com/woocommerce/woocommerce-admin/pull/3722)
* Use cron for unsnoozing admin notes (https://github.com/woocommerce/woocommerce-admin/pull/3662)
* Use wp-cron for admin note snoozing.
* Remove "unsnooze" scheduled action.
* Use correct version.
* Avoid using deprecated method for unscheduling actions.
* Onboarding: Fix toggle tracking events (https://github.com/woocommerce/woocommerce-admin/pull/3645)
* Fix errant wcadmin prefix on event name
* Track the onboarding toggle on the option in case enable_onboarding isn't used
* Move toggle actions to separate function
* Move onboarding actions
* Move onboarding filters
* Move help tab updates to add_toggle_actions
* Only run onboarding actions when enabled
* Onboarding: Add tracks events when profiler steps are completed (https://github.com/woocommerce/woocommerce-admin/pull/3726)
* Add tracks for store profiler step completion
* Record event when profiler is completed
* Ensure continue setup loads the onboarding profiler (https://github.com/woocommerce/woocommerce-admin/pull/3646)
* 'All that include' option removed when input field is empty (https://github.com/woocommerce/woocommerce-admin/pull/3700)
* 'All that include' option removed when input field is empty
Added a control to check that when the input field 'Search by customer name' is empty, the 'All that include' option is not appearing.
* Const name improved
The constant name hasValues was changed to optionsHaveValues (more descriptive)
* Fix select text alignment (https://github.com/woocommerce/woocommerce-admin/pull/3723)
Co-authored-by: Timmy Crawford <timmyc@users.noreply.github.com>
Co-authored-by: Jeff Stieler <jeff.m.stieler@gmail.com>
Co-authored-by: Joshua T Flowers <joshuatf@gmail.com>
Co-authored-by: Fernando <ultimoround@gmail.com>
Co-authored-by: edmundcwm <edmundcwm@gmail.com>
* Make analytics tables use the site's date format setting
* Use getSetting instead of the wcSettings global
* Use configured date format in coupons analytics table
* Use default date format as fallback in analytics
* Rename downloads table class name
* Added link to "go shopping" button
Onboarding - added a link to the shop page in the "go shopping" button
* Now using core's helper method
* Added esc_url function to shop_url
* woocommerce_get_page_id was replaced by wc_get_page_id
* Mark profiler as complete if previous onboarding install has been handled
* Load features before WC updated hooks
* Add todo note about updating core install check
* Mark payments task complete when payment configured
* Only mark complete when all payments configured
* Only mark payments complete if all payments configured
* Allow installed themes to be installed and activated
* Filter themes on client-side by WC support and currently active
* Run transient deletion hook during REST requests
* Delete transient on theme switch for non-admin requests
* Don't truncate table data on uninstall if WooCommerce Admin is in core.
* DROP tables on uninstall (like core does).
* Migrate wc_ prefix options to woocommerce_.
This allows core WC to clean up when uninstalled.
* Migrate wc_ prefixed user meta fields to woocommerce_.
This allows core WC to clean up when uninstalled.
* Fix use of date().
* Update comment describing the option value filter.
* Add note to complete profiler
* Add note actions
* Update note to actioned when profiler is marked complete
* Update note to actioned client-side when completing profiler
* Add an array of installed plugins to wcSettings
* Don't include already installed plugins in cart items
* Move cart modal component
* Add purchase task and modal to task list
* Rename ambiguous task getter method
* Remove modal purchase later prop
* Show completed product purchase task item after purchase
* Don't show cart modal if all items previously purchased
* Add theme name to theme activation response
* Install and activate theme on choose in profiler
* Only auto install free themes and not currently active themes
* Move getPriceValue to dashboard utils
* Don't add free themes to the cart
* Add API endpoint to install themes
* Add API endpoint to activate a theme
* Add an array of allowed themes and sanitize slugs
* Limit allowed themes to already installed or free themes
* Add theme installation tests
* Add tests for theme activation
* Add onboarding theme installation and activation tests
* Remove unused argument in onboarding plugins API
* Add purchase modal to confirm intent before cart redirect
* Handle PR feedback: Fix comment on getProductIdsForCart, move cart modal to open on theme page (which rewrites the mark completed functionality), fix CSS display, Add busy stsate to redirect to cart button
* Fix some minor naming issues and add a busy state on thee later link
* Add filter to conditionally disable report caching.
* Disable caching for Orders Stats unit tests.
Fixes the display of the last query when tests fail.
* Add currency extension
* use wcSettings
* save
* get revenue working
* all reports
* remove error log
* better rename
* add column
* persist queries
* go back to individual hooks
* comments
* address feedback
* Relabel Net Revenue to Net Sales, revert previous refund work on Gross revenue and rename to total sales. Update the orer of all the things
* Add gross sales calculation to revenue stats endpoint.
* Restore coupon_total when updating order stats.
* Wire up gross sales to revenue report.
* Fix revenue report refunds calculation when there are no refunds.
* update net sales labels and cases in order, product and category tables
* Subtract refunded shipping and taxes from gross sales.
* pluses to minuses to fix the gross revenue and refund totals when refunding
* Add gross_sales to revenue stats orderby enum.
* Change refund labels to Returns
* Remove usage of defunct coupon_total column.
* Store refunded amount in stats table.
* Rename "gross_total" column to "total_sales".
* Net total for refund orders can be used instead of a new column.
* Rename gross_revenue to total_sales.
* Coalesce coupons total in order stats query.
SUM()ing all nulls gives null, not zero.
* Use segmentation selections to backfill missing data.
Fo when report columns and segmentation columns don't match.
* Remove errant gross_sales from expected interval test data.
* Fix gross sales tests for revenue/stats.
* Move missing segment fills back to their original locations.
* Fix remaining tests failing because of gross sales.
* Fix db upgrade function rename of gross_total column.
* Fix linter errors.
* Create GH tag release process
Add core to the release
no need to re-run docs
simplify build command
add gh release script
fix errant comment
fix errant comment
force add feature-config.php
gitattributes
moar attributes
add language files
* Make sure initalization via Core is working
* Add on option to toggle on the new onboarding experience
* Add an option to toggle off the new onboarding experience
* Update todo comment to remove option on merge to core
* Add tax rates filter to orders report
* Add tax rate filters to orders data store
* Add tax rate query filters to order stats data store
* Add tax rate orders link to taxes table