woocommerce/plugins/woocommerce-admin/client/analytics/report
Joshua T Flowers c6a6e737c4 Add refund filtering to order reports (https://github.com/woocommerce/woocommerce-admin/pull/2179)
* Add customer functions to order and refund classes

* Extract shared order and refund methods to trait

* Add refund filter to advanced filters in orders report

* Filter refund types in orders data store

* Extract refunds subquery to parent report data store method

* Add refund subquery filtering to order stats data store

* Add tests around refund type filtering

* Change the default option for the refunds filter
2019-05-10 14:56:57 +08:00
..
categories pass in filters 2019-03-25 13:03:53 +13:00
coupons pass in filters 2019-03-25 13:03:53 +13:00
customers pass in filters 2019-03-25 13:03:53 +13:00
downloads pass in filters 2019-03-25 13:03:53 +13:00
orders Add refund filtering to order reports (https://github.com/woocommerce/woocommerce-admin/pull/2179) 2019-05-10 14:56:57 +08:00
products Fix SKU sorting in the Variations report when a comparison is active (https://github.com/woocommerce/woocommerce-admin/pull/1952) 2019-04-01 10:09:45 +02:00
revenue Update text domain. (https://github.com/woocommerce/woocommerce-admin/pull/1795) 2019-03-13 11:14:02 -06:00
stock pass in filters 2019-03-25 13:03:53 +13:00
taxes pass in filters 2019-03-25 13:03:53 +13:00
README.md update analytics report readme 2019-04-29 08:58:33 -03:00
index.js Example Extensions: create build environment 2019-04-17 14:01:56 +12:00
style.scss Add loading indicators, error state, and EmptyContent to the revenue report. (#347, woocommerce/woocommerce-admin#348) 2018-09-05 12:45:49 -04:00

README.md

Reports

The core reports offered by WooCommerce live in this folder. The Header is added automatically by the parent Report component, each individual component should contain just the report contents.

Extending Reports

New reports can be added by third-parties without altering woocommerce-admin, by hooking into the reports filter, woocommerce_admin_reports_list. For example:

addFilter( 'woocommerce_admin_reports_list', 'analytics/my-report', pages => {
	return [
		...pages,
		{
			report: 'example',
			title: 'My Example Extension',
			component: Report,
		},
	];
} );

Each report is defined by an object containing report, title, component.

  • report (string): The path used to show the report, ex: /analytics/example
  • title (string): The title shown in the breadcrumbs & document title.
  • component (react component): The component containing the report content- everything on the page under the breadcrumbs header.

The component will get the following props:

  • query (object): The query string for the current view, can be used to paginate reports, or sort/filter report data.
  • path (string): The exact path for this view.
  • pathMatch (string): The route matched for this view, should always be /analytics/:report.
  • params (object): This will contain the report from the path, which should match report in the page object.

Note: Adding your page to woocommerce_admin_reports_list does not add the item to the admin menu, you'll need to do that in PHP with the woocommerce_admin_report_menu_items filter.