Commit Graph

1468 Commits

Author SHA1 Message Date
Albert Juhé Lluveras f2ac9f2bb2 Center points in single-date charts (https://github.com/woocommerce/woocommerce-admin/pull/1360)
* Center single point charts

* Don't render lines if there is only one date

* Remove xOffset from 'params'

* Improve variable naming
2019-01-21 20:30:21 +01:00
Albert Juhé Lluveras 37d6fa0b60 CSS Lint fixes (https://github.com/woocommerce/woocommerce-admin/pull/1367) 2019-01-21 19:09:16 +01:00
Justin Shreve 1f8caf106e Fix performance-indicators/allowed schema. 2019-01-21 12:28:32 -05:00
Joshua T Flowers 3ac97e00c4 Add single category filter to products report (https://github.com/woocommerce/woocommerce-admin/pull/1350)
* Add namespace v4 for WC product/categories endpoint

* Update categories wc-api to use v4 namespace constant

* Add single product category filter to product categories report

* Add link to filtered product report from category report

* Use persistedQuery for category links

* Check if category is defined before displaying category link

* Remove selectedTags when filter does not match queried filter
2019-01-22 01:12:00 +08:00
Joshua T Flowers 4869401ec4 REST API: Allow sorting by stock_status in stocks endpoint (https://github.com/woocommerce/woocommerce-admin/pull/1335)
* REST API: Allow sorting by stock_status in stocks endpoint

* Set stock_status as default orderby

* Sort by both stock status and quantity in meta query

* Use stock_status sort order by default in Stock table (https://github.com/woocommerce/woocommerce-admin/pull/1340)

* Reverse stock quantity order when sorting by stock status
2019-01-22 01:11:20 +08:00
Jeff Stieler 4a6f2652b6 Hook customers report table summary up to stats endpoint. 2019-01-21 08:46:21 -07:00
Paul Sealock 7856a58b49 Advanced Filters: Ranges: Allow update only on complete selection 2019-01-21 09:54:31 +13:00
Albert Juhé Lluveras c9df5861a8 Remove leading zero from chart dates (https://github.com/woocommerce/woocommerce-admin/pull/1353) 2019-01-19 12:38:17 +01:00
Jeff Stieler 07cbaae2a5 Add customers report stats endpoint. 2019-01-18 20:29:50 -07:00
Justin Shreve 2f60837ba5 Add performance indicators to dashboard (https://github.com/woocommerce/woocommerce-admin/pull/1343)
* Add label and generated report URL to the performance indicator response.

* Hook up performance indicators to the REST API

* Handle PR feedback

* Fix setting default values
2019-01-18 14:22:11 -05:00
Justin Shreve 286f5a7ae1 Update list of allowed stats 2019-01-18 15:11:38 -05:00
Justin Shreve 7c418a4a45 Add v4 of the data/countries filter so that the country autocompleter work and a notice goes away. (https://github.com/woocommerce/woocommerce-admin/pull/1354) 2019-01-18 14:17:12 -05:00
Justin Shreve b8d25c3073 Fix setting default values 2019-01-18 12:11:49 -05:00
Peter Fabian f2634ca5c8 Added support for segmenting to coupons/stats. 2019-01-18 17:11:46 +01:00
Justin Shreve bd54541ca0 Handle PR feedback 2019-01-18 08:52:10 -05:00
Justin Shreve 01b96ebea5 Hook up performance indicators to the REST API 2019-01-18 08:19:19 -05:00
Justin Shreve 96fc10747f Add label and generated report URL to the performance indicator response. 2019-01-18 08:16:52 -05:00
Peter Fabian e8f264c346 Moved common code to parent class. 2019-01-18 14:08:34 +01:00
Peter Fabian ea2f5ca5d9 Fixed number of parameters for product lookup update. 2019-01-18 13:07:19 +01:00
Peter Fabian caea199852 Updated revenue/stats REST controller to include segmentation options/fields. 2019-01-18 13:06:40 +01:00
Peter Fabian 128f52fdc8 Restrict products/stats only to supported segmentby options. 2019-01-18 12:28:12 +01:00
Joshua T Flowers 25e7192ecb Move search icon inside input wrapper (https://github.com/woocommerce/woocommerce-admin/pull/1351) 2019-01-18 18:51:47 +08:00
Peter Fabian 1d79714295 Added segmenting to products/stats. 2019-01-18 11:41:15 +01:00
Joshua T Flowers fb8c4dd92f Add single category filter to categories report (https://github.com/woocommerce/woocommerce-admin/pull/1336)
* Add single category filter to categories report

* Change categories leaderboard link to signle category link

* Remove todo comment regarding the single_category filter

* Update category links to categories report in products table
2019-01-18 15:46:12 +08:00
Joshua T Flowers e0853b5408 Add country code as keyword for countries search (https://github.com/woocommerce/woocommerce-admin/pull/1337)
* Add country name to tooltip and screen reader text

* Add country code to autocompleter keywords
2019-01-18 11:13:07 +08:00
Joshua T Flowers 6b29ec01a7 Add autocompleter input type and fix load options (https://github.com/woocommerce/woocommerce-admin/pull/1334)
* Allow inputType option for autocompleters

* Return early if optionsData is undefined in loadOptions

* Remove number spinners for autocomplete number inputs
2019-01-18 10:53:38 +08:00
Joshua T Flowers 7cdbbf87e8 Update all wc-admin endpoints to v4 (https://github.com/woocommerce/woocommerce-admin/pull/1298)
* Update all wc-admin endpoints to v4

* Add namespace for products and customers controllers

* Include product quantity in orders data store

* Add coupons to extended data in the orders data store

* Format order statuses response from database

* Hook up orders table to orders endpoint

* Add namespace to data endpoint controller

* Add namespaces to remaining extended controllers

* Use NAMESPACE var in place of wc/v4

* Update product links in orders table to products reports

* Add coupons rest controller override

* Format coupon code in response

Co-Authored-By: joshuatf <joshuatf@gmail.com>
2019-01-18 10:52:58 +08:00
Joshua T Flowers 11ddae699a Add helpText to coupon compare button (https://github.com/woocommerce/woocommerce-admin/pull/1333) 2019-01-18 10:22:51 +08:00
Jeff Stieler 4407e05bc4 Merge pull request woocommerce/woocommerce-admin#1342 from woocommerce/fix/1090-currency-settings-formatting
Honor WooCommerce Settings When Formatting Currency/Price
2019-01-17 17:06:13 -07:00
Jeff Stieler ec2efaf560 Update affected package CHANGELOGs. 2019-01-17 16:38:43 -07:00
Jeff Stieler 560606df17 Update comment about formatCurrency() currency symbol parameter fallback logic. 2019-01-17 16:30:27 -07:00
Jeff Stieler 4fabbee20f numberFormat(): add test for new non-number precision value logic. 2019-01-17 16:28:00 -07:00
Jeff Stieler 2ad5922f1f Simplify precision preservation logic in numberFormat().
Props @Aljullu.
2019-01-17 16:25:44 -07:00
Albert Juhé Lluveras 059cd0ef0d Set default order to 'desc' in time tables (https://github.com/woocommerce/woocommerce-admin/pull/1341) 2019-01-17 22:14:12 +01:00
Albert Juhé Lluveras 5dcea1af6f Remove wc-api customers (https://github.com/woocommerce/woocommerce-admin/pull/1338) 2019-01-17 19:07:21 +01:00
Paul Sealock 836cccafb8 Merge pull request woocommerce/woocommerce-admin#1327 from woocommerce/fix/filter-width-wide-screens
Filters: make 1/4 width for wiiiiiiide screens
2019-01-18 07:01:17 +13:00
Paul Sealock 3ba676ac57 Merge pull request woocommerce/woocommerce-admin#1305 from woocommerce/fix/date-query-formats
Advanced Filters: append time stamp to dates for API query
2019-01-18 07:00:40 +13:00
Timmy Crawford 508c48042c chore(release): publish (https://github.com/woocommerce/woocommerce-admin/pull/1326)
- @woocommerce/components@1.4.0
 - @woocommerce/csv-export@1.0.2
 - @woocommerce/date@1.0.5
2019-01-17 09:11:49 -08:00
Jeff Stieler 7a0243e6d7 Use store currency settings to initialize D3 format. 2019-01-17 10:08:15 -07:00
Jeff Stieler 25e81de952 Decode HTML entities in currency symbol and price format for use on the frontend.
The only alternative is to `dangerouslySetInnerHTML` everywhere.
2019-01-17 09:21:03 -07:00
Peter Fabian 25bb5e06df Factor out the segmentation code so that it's more reusable and clutters orders/stats data store less. 2019-01-17 12:14:24 +01:00
Albert Juhé Lluveras 4d2ee738d0 Set eslint react version to 'detect' (https://github.com/woocommerce/woocommerce-admin/pull/1300) 2019-01-17 10:25:08 +01:00
Albert Juhé Lluveras 0cda85b997 Add missing thousands separator in charts Y-axis (https://github.com/woocommerce/woocommerce-admin/pull/1312) 2019-01-17 10:18:28 +01:00
Jeff Stieler 6ed8ea117a Refactor formatCurrency() to use store settings for formatting rather than store locale. 2019-01-17 00:04:57 -07:00
Jeff Stieler ddae6d3955 Add currency symbol to orders endpoint response. 2019-01-17 00:01:09 -07:00
Joshua T Flowers da22cbdc9d Update returning customer data to use customer ID (https://github.com/woocommerce/woocommerce-admin/pull/1180)
* Change check for returning customers to check customer_id

* Count distinct returning and new customers in totals

* Fix priority action misplacement and order date timestamp

* Change expected num returning/new customers to fix failing tests

Previously these included references to number of returning vs new orders.  Update to refer to the newly updated customer count.

* Use new get_customer_id_by_user_id() to get customer ID

* Fix 0 returning customers expectation

* Move returning customer function to order stats data store

* Sync order stats on order delete

* Change date compare for is_returning_customer

* Add test case for returning customer order

* Add references to  instead of 2
2019-01-17 10:47:30 +08:00
Jeff Stieler 858ec82e8c Rework numberFormat() to maintain decimal precision by default. 2019-01-16 18:41:15 -07:00
Paul Sealock d214e229ae refactor timeStampFilterDates 2019-01-17 13:57:11 +13:00
Paul Sealock af98c7dd91 better tests 2019-01-17 13:35:20 +13:00
Jeff Stieler 4bf7a79a84 Add price format, decimal separator, and thousand separator to currency settings object. 2019-01-16 17:32:48 -07:00
Jeff Stieler 78e1be139f Refactor numberFormat() to use the store settings for precision, decimal separator, and thousand separator. 2019-01-16 17:32:12 -07:00
Paul Sealock 41c30c7506 Filters: make 1/4 width for wiiiiiiide screens 2019-01-17 12:21:45 +13:00
Paul Sealock c866d1e1e2 Customers Report: remove extended data call 2019-01-17 10:10:23 +13:00
Paul Sealock aaceb781fd tests 2019-01-17 09:37:43 +13:00
Paul Sealock b3d7e96a00 jsDoc 2019-01-17 09:08:04 +13:00
Paul Sealock 4cd803466a updateFilter 2019-01-17 08:57:41 +13:00
Jeff Stieler 149ee08f4b Include all users in customer lookup table generation. 2019-01-16 10:20:11 -07:00
Jeff Stieler c0e6a097fd Fix orders report test. 2019-01-16 09:45:52 -07:00
Jeff Stieler 11cb74cccd Fix variable name nitpick. 2019-01-16 09:45:52 -07:00
Jeff Stieler a2f94c11ba Add coupons and taxes lookup table generation to reports rebuild. 2019-01-16 09:45:51 -07:00
Jeff Stieler 84732137bc Bail out of creating batches for customers and orders if there are none. 2019-01-16 09:45:51 -07:00
Jeff Stieler ffe11650a8 Remove now-defunct order stats background process. 2019-01-16 09:45:50 -07:00
Jeff Stieler 763cc972a7 Regenerate all reports from rebuild stats endpoint. 2019-01-16 09:45:04 -07:00
Jeff Stieler 5c6174066e Add tests for report regeneration batch queuing methods. 2019-01-16 09:45:04 -07:00
Jeff Stieler 1a5af7094d Add WC_Action_Queue test helper class.
The test helper allows inspection of the action queue.
2019-01-16 09:45:04 -07:00
Jeff Stieler 4786938bdf Fix customers report tests. 2019-01-16 09:45:03 -07:00
Jeff Stieler 6eca20c5fd Reports regenerate: add mechanism to queue an action after another completes - use to queue orders lookup init after customers lookup. 2019-01-16 09:45:03 -07:00
Jeff Stieler 4740f93985 Reports regenerate: use queue to update order stats and products lookup table. 2019-01-16 09:45:02 -07:00
Jeff Stieler 3b9a4ef4a1 Report regeneration: allow batch sizes to differ between actions. 2019-01-16 09:45:02 -07:00
Jeff Stieler fabc1dc70b Reports regenerate: use queue to update customers lookup table. 2019-01-16 09:45:02 -07:00
Jeff Stieler c361119a0d Report table generation: add method for enqueuing a large number of batch jobs with a limited batch size. 2019-01-16 09:45:01 -07:00
Timmy Crawford d45f31c389 Update packages docs (https://github.com/woocommerce/woocommerce-admin/pull/1324) 2019-01-16 08:39:37 -08:00
Timmy Crawford 0cb75629de Release v0.5.0 (https://github.com/woocommerce/woocommerce-admin/pull/1319)
* Release 0.5.0

* Updates from release build.
2019-01-16 08:24:45 -08:00
renovate[bot] e6dd023fc8 Update dependency recast to v0.16.2 (https://github.com/woocommerce/woocommerce-admin/pull/1318) 2019-01-16 13:13:44 +01:00
renovate[bot] f3c61d4121 Update dependency eslint-plugin-jest to v22.1.3 (https://github.com/woocommerce/woocommerce-admin/pull/1317) 2019-01-16 13:01:02 +01:00
renovate[bot] 65c2a01213 Update dependency dompurify to v1.0.9 (https://github.com/woocommerce/woocommerce-admin/pull/1315) 2019-01-16 12:58:54 +01:00
renovate[bot] 78cfaec287 Update dependency core-js to v2.6.2 (https://github.com/woocommerce/woocommerce-admin/pull/1314) 2019-01-16 12:57:08 +01:00
renovate[bot] f8c6d949e4 Pin dependency node-watch to 0.6.0 (https://github.com/woocommerce/woocommerce-admin/pull/1313) 2019-01-16 12:55:13 +01:00
Peter Fabian 05c7670090 Merge branch 'master' into fix/1035
# Conflicts:
#	includes/class-wc-admin-reports-interval.php
#	includes/data-stores/class-wc-admin-reports-data-store.php
#	includes/data-stores/class-wc-admin-reports-products-data-store.php
2019-01-16 12:51:23 +01:00
Joshua T Flowers 33a7cfa1b0 Store all order statuses (https://github.com/woocommerce/woocommerce-admin/pull/1285)
* Store all orders regardless of status in wc_order_stats

* Only query select statuses if status_is or status_is_not is not set

* Fix order stats example query

* Filter category store by default order statuses

* Add table_name to interval functions to avoid ambiguity

* Filter coupon store by default order statuses

* Fix interval stats by adding table_name to interval function

* Filter products store by default order statuses

* Remove unused order_status in coupons data store

* Store products with any order status

* Fix ambiguous order by call in products data store

* Apply status filter after other filters to avoid logical OR matching

* Store all coupon data regardless of order status

* Filter taxes by default order statuses

* Filter customer stats by default order status

* Filter default order statuses in variations data store

* Use excluded statuses to filter reports by default

* DRY up default excluded statuses query

* Fix up new orders data store after rebase
2019-01-16 10:23:00 +08:00
Albert Juhé Lluveras 1001dd0601 Fix watch package files in Linux (https://github.com/woocommerce/woocommerce-admin/pull/1301) 2019-01-15 19:40:13 +01:00
Albert Juhé Lluveras de4309d61e Remove `barfocus` elements from charts (https://github.com/woocommerce/woocommerce-admin/pull/1311)
* Remove barfocus elements from charts

* Render background color behind bars

* Rename barmouse to barfocus
2019-01-15 19:40:02 +01:00
renovate[bot] a5cfc072c2 Pin dependency mini-css-extract-plugin to 0.5.0 (https://github.com/woocommerce/woocommerce-admin/pull/1309) 2019-01-15 12:09:07 +01:00
Albert Juhé Lluveras 8b341f0981 Replace 'extract-text-webpack-plugin' with 'mini-css-extract-plugin' (https://github.com/woocommerce/woocommerce-admin/pull/1299) 2019-01-15 11:55:54 +01:00
Peter Fabian 29f07f8c57 Re-enable temporarily disabled tests. 2019-01-15 11:51:43 +01:00
Peter Fabian 5ba443fca8 Updated data store used in test to reflect the rename of class. 2019-01-15 11:50:53 +01:00
Peter Fabian c324157483 Merge branch 'master' into fix/1035
# Conflicts:
#	includes/data-stores/class-wc-admin-reports-orders-data-store.php
#	includes/data-stores/class-wc-admin-reports-orders-stats-data-store.php
2019-01-15 11:39:39 +01:00
Peter Fabian 2fc9de0bb0 Preparation for merge of a moved file. 2019-01-15 11:36:56 +01:00
Peter Fabian f84efa3a58 Added test for segmenting /orders/stats by product. 2019-01-15 11:16:31 +01:00
Peter Fabian d067c2148d Added sorting of segments so that they have predictable order. 2019-01-15 11:13:43 +01:00
Peter Fabian ea2d5bfe35 Removed double refund subtracting. 2019-01-15 11:11:58 +01:00
Peter Fabian 93b331243b Corrected JSON response in case no fields are selected in $query_params. 2019-01-15 11:11:14 +01:00
Peter Fabian b593163dff Added more general function for sorting array of arrays based on subarray's key. 2019-01-15 11:08:23 +01:00
Paul Sealock 7b11e40981 timeStampFilterDates 2019-01-15 15:40:12 +13:00
Joshua T Flowers ee19308254 Add initial state hydration for user data (https://github.com/woocommerce/woocommerce-admin/pull/1297)
* Hydrate initial state through localized script

* Parse user meta for default rows as integer

* Change eslint ignore to undef only

* Add currentUserData to wcSettings
2019-01-15 10:24:06 +08:00
Joshua T Flowers 4b3df7732b Add showMenu prop to TableCard to hide ellipsis menu (https://github.com/woocommerce/woocommerce-admin/pull/1296)
* Add showMenu prop to TableCard to hide ellipsis menu

* Fix proptype description
2019-01-15 10:13:15 +08:00
Paul Sealock 01cf0eba2f specify before on construct 2019-01-15 15:01:38 +13:00
Joshua T Flowers 14f8f08edf Add v4 orders endpoint (https://github.com/woocommerce/woocommerce-admin/pull/1246)
* Rename orders controllers and data store to order stats

* Add orders data store and controller

* Add coupon, product, and status filters

* Add customer type query filter

* Add extended info for products and categories

* Bump API namespace to v4

* Add missing schema properties

* Set default customer_type and extended_info params

* Add orders endpoint tests

* Only use one JOIN if both excluded and included queries are used

* Optimize query calls to get product and category data

* Split product and category fetch and limit to product_cat taxonomy
2019-01-15 09:53:02 +08:00
Paul Sealock 66b76f5b8f replaceFilter 2019-01-15 13:47:07 +13:00
Paul Sealock 7556b45eab Advanced Filters: Dates, fix query formats 2019-01-15 13:02:24 +13:00