woocommerce/plugins/woocommerce-admin/client/analytics/report
Albert Juhé Lluveras 9623898acd Add Orders table (https://github.com/woocommerce/woocommerce-admin/pull/493)
* Create Orders table

* Remove getOrderIds selector

* Create an OrdersReportTable component

* Alphabetically order extracted props

* Fix JS error for missing coupon properties

* Add TODO comment for missing customer type

* Add calculation for net revenue

* Align all table cells but identifier to the right

* Remove temporary text

* Improve cell link inline CSS

* Count several purchases of the same product as items sold

* Add TODO message to coupon link

* Add Download to Orders table

* Don't use camelCase for table column keys

* Cleanup

* Make products and coupons columns non-sortable

* Create renderList method to simplify products/coupons list creation

* Display correct currency for each order

* RTL table fixes

* Fix: products and coupons columns showing 'false' in CSV download

* Minor fixes

* Rename 'isIdentifier' with 'isLeftAligned' in table columns

* Remove toggleStatus method
2018-10-11 10:30:51 +02:00
..
coupons Coupons: add config, autocompleter 2018-09-21 11:54:22 +12:00
orders Add Orders table (https://github.com/woocommerce/woocommerce-admin/pull/493) 2018-10-11 10:30:51 +02:00
products Add Orders table (https://github.com/woocommerce/woocommerce-admin/pull/493) 2018-10-11 10:30:51 +02:00
revenue Add Orders table (https://github.com/woocommerce/woocommerce-admin/pull/493) 2018-10-11 10:30:51 +02:00
README.md Extensions: Add filter to allow third-party registration of reports (https://github.com/woocommerce/woocommerce-admin/pull/298) 2018-08-20 17:24:17 -04:00
index.js Update `layout/*` file structure (https://github.com/woocommerce/woocommerce-admin/pull/463) 2018-09-21 11:19:05 -04: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 wc-admin, by hooking into the reports filter, woocommerce-reports-list. For example:

addFilter( 'woocommerce-reports-list', 'wc-example/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-reports-list does not add the item to the admin menu, you'll need to do that in PHP with wc_admin_register_page.