Commit Graph

1742 Commits

Author SHA1 Message Date
Joshua T Flowers a4f7fcdfe3 Fix variation search autocompleter invalid route (https://github.com/woocommerce/woocommerce-admin/pull/1448) 2019-02-04 10:49:58 +08:00
Claudio Sanches c1bb5802d1 Fixed coding standards 2019-02-01 18:48:54 -02:00
Claudio Sanches 464ec09d38 Merge branch 'feature/754' of github.com:woocommerce/wc-admin into feature/754 2019-02-01 18:32:41 -02:00
Claudio Sanches 48ef33636f Removed extra function from conflicts 2019-02-01 18:31:10 -02:00
Claudio Sanches 8c0c01a3da Merge branch 'master' into feature/754 2019-02-01 18:27:23 -02:00
Claudio Sanches 31e8dc9332 Merge branch 'master' into fix/1307 2019-02-01 18:24:26 -02:00
Peter Fabian 32f851be5b Merge pull request woocommerce/woocommerce-admin#1286 from woocommerce/fix/1035
Added segmenting support to REST API
2019-02-01 20:50:38 +01:00
Claudio Sanches 4c71e78222 Fixed database prefixes
Moved from woocommerce_ to wc_
2019-02-01 17:23:07 -02:00
Claudio Sanches 93f9ec8ae8 Docblocks 2019-02-01 17:10:31 -02:00
Claudio Sanches e41a81f8b9 Updated woocommerce_trash_note to woocommerce_delete_note
Admin notes doesn't handle statuses, so it's not possible to move to
trash and restore admin notes, all admin notes are permanently deleted.
2019-02-01 17:08:43 -02:00
Claudio Sanches 707067e255 Docblocks 2019-02-01 17:02:15 -02:00
Claudio Sanches cd55051da3 New actions for when deleting objects from database 2019-02-01 16:29:14 -02:00
Claudio Sanches 68e0c98828 New action name: woocommerce_delete_reports_order_stats 2019-02-01 16:10:00 -02:00
Claudio Sanches 07f3f33566 Introduced new hooks for jetpack sync 2019-02-01 15:43:24 -02:00
Peter Fabian 663e454b8f Fixed schema: type and enum for segment_id. 2019-02-01 18:30:39 +01:00
Peter Fabian 2bc99cdb31 Added basic tests for zero filling when sorting intervals by non-date property. 2019-02-01 18:16:39 +01:00
Peter Fabian 9c52155d40 Merge pull request woocommerce/woocommerce-admin#1446 from woocommerce/fix/1445
Added primary key to tax lookup table to prevent duplicate entries.
2019-02-01 17:52:59 +01:00
Justin Shreve 3fa704f7f4 Add GPL License (https://github.com/woocommerce/woocommerce-admin/pull/1440)
* Add GPL License file

* Match Gutenberg license / add extra sections
2019-02-01 10:22:05 -05:00
Peter Fabian c2bcad2e50 Merge branch 'master' into fix/1012-2 2019-02-01 13:32:35 +01:00
Albert Juhé Lluveras 6d8634a753 Add 'Clear' button to Search input (https://github.com/woocommerce/woocommerce-admin/pull/1410)
* Move labels loading logic into a lib

* Move lib/labels into lib/async-requests

* Implement tabular data filtering

* Allow searching for string in report tables

* Add table filtering to customers table

* Get ids from searched string to populate the table

* Fix autocompleter keyboard interactions

* Improve props naming

* Cleanup report customers data store

* Prevent an edge case issue that might not update the selectedOptions when directily modifying the URL

* Add 'Clear' button to Search input

* Cleanup
2019-02-01 11:49:46 +01:00
Albert Juhé Lluveras 666d8e4a3b Merge getOrders and getItems (https://github.com/woocommerce/woocommerce-admin/pull/1438)
* Move labels loading logic into a lib

* Move lib/labels into lib/async-requests

* Implement tabular data filtering

* Allow searching for string in report tables

* Add table filtering to customers table

* Get ids from searched string to populate the table

* Fix autocompleter keyboard interactions

* Improve props naming

* Cleanup report customers data store

* Prevent an edge case issue that might not update the selectedOptions when directily modifying the URL

* Fix wrong selected autocompleter option

* Add missing translation domain

* Move searchItemsByString to wc-api/items/utils.js

* Avoid autocompleter results appearing when there was no search string

* Alphabetically order 'allowFreeTextSearch' prop

* Reset selected table rows when directly modifying the URL

* Simplify props destructuring

* Undo customers data store change

* Simplify isProductDetailsView expression

* Improve order

* Merge getOrders and getItems
2019-02-01 11:01:42 +01:00
Albert Juhé Lluveras d8ed3b6614 Implement tabular data filtering (https://github.com/woocommerce/woocommerce-admin/pull/1381)
* Move labels loading logic into a lib

* Move lib/labels into lib/async-requests

* Implement tabular data filtering

* Allow searching for string in report tables

* Add table filtering to customers table

* Get ids from searched string to populate the table

* Fix autocompleter keyboard interactions

* Improve props naming

* Cleanup report customers data store

* Prevent an edge case issue that might not update the selectedOptions when directily modifying the URL

* Fix wrong selected autocompleter option

* Add missing translation domain

* Move searchItemsByString to wc-api/items/utils.js

* Avoid autocompleter results appearing when there was no search string

* Alphabetically order 'allowFreeTextSearch' prop

* Reset selected table rows when directly modifying the URL

* Simplify props destructuring

* Undo customers data store change

* Simplify isProductDetailsView expression

* Improve order

* Filter tax code parts before modifying them
2019-02-01 10:55:19 +01:00
Albert Juhé Lluveras 1069034ca2 Trim search box input (https://github.com/woocommerce/woocommerce-admin/pull/1439)
* Trim search box input

* Add tests
2019-02-01 10:43:56 +01:00
Peter Fabian 907fcdb863 Merge pull request woocommerce/woocommerce-admin#1435 from woocommerce/fix/1372
Added indices for faster joins with customer table and filtering by order status.
2019-02-01 10:27:06 +01:00
Peter Fabian 8bc4c70cae Added primary key to tax lookup table to prevent duplicate entries. 2019-02-01 10:23:59 +01:00
Kelly Dwan ca34ad0274 Bump version (https://github.com/woocommerce/woocommerce-admin/pull/1442) 2019-01-31 17:47:50 -05:00
Peter Fabian 40b9458f8d Added indices for faster joins with customer table and filtering by order status. 2019-01-31 10:54:55 +01:00
Joshua T Flowers e65247c54e Add SKU to product variations table (https://github.com/woocommerce/woocommerce-admin/pull/1422)
* Add SKU to product variations data store extended info

* Show SKU in product variations table

* Add sku tests for product variation reports
2019-01-31 09:27:15 +08:00
Joshua T Flowers 49e78b90cf Add settings page with excluded order statuses (https://github.com/woocommerce/woocommerce-admin/pull/1364)
* Add settings page routes

* Add control options for excluded statuses

* Add control options for excluded statuses

* Add excluded order statuses to rest api

* Add wc settings to wc-api

* Add wc settings to wc-api

* Split and validate multiselect values in settings controller

* Add wcAdminSettings to wcSettings global

* Set initial excluded statuses from serverside wcSettings data

* Add extensible filter for wcSettings global

* Split arrays into comma separated strings in wc-api

* Extract setting as separate component

* Extra settings to config file

* Add checkboxGroup option as input type

* Separate status types into default and custom groups

* Add setting option styling

* Add responsive styling for settings

* Fix wpClosedMenu and wpOpenMenu for settings page

* Add support for resetting to default values

* Only show checkbox group if options are available

* Add proptypes to Setting component

* Add extensible filter to analytics settings

* Add readme for settings config and extensibility

* Hook up excluded status settings to reports

* Pass object to settings API instead of comma delimited string

* Fix inpuType -> inputType typo

* Remove hasError from constructor

* Bump settings API to v4

* Use interpolateComponents instead of dangerously setting html

* Use empty array in initial excldued statuses setting value if none is retrieved

* Remove double check for refunded status in default order statuses

* Update settings wc-api to use namespace

* Add aria=labelledby to checkbox group
2019-01-31 09:04:11 +08:00
renovate[bot] 713d64c97a Lock file maintenance (https://github.com/woocommerce/woocommerce-admin/pull/1362) 2019-01-30 16:15:54 -05:00
renovate[bot] 85a46252df Update dependency core-js to v2.6.3 (https://github.com/woocommerce/woocommerce-admin/pull/1375) 2019-01-30 15:59:19 -05:00
renovate[bot] f128716d28 Update babel monorepo (https://github.com/woocommerce/woocommerce-admin/pull/1373) 2019-01-30 15:46:29 -05:00
renovate[bot] e18837e255 Update dependency autoprefixer to v9.4.7 (https://github.com/woocommerce/woocommerce-admin/pull/1374) 2019-01-30 15:25:19 -05:00
renovate[bot] ead7ca0523 Pin dependency locutus to 2.0.10 (https://github.com/woocommerce/woocommerce-admin/pull/1408) 2019-01-30 15:13:31 -05:00
renovate[bot] 099e8a60af Update dependency eslint-plugin-jsx-a11y to v6.2.0 (https://github.com/woocommerce/woocommerce-admin/pull/1416) 2019-01-30 14:20:36 -05:00
renovate[bot] 40cd3545fe Update dependency eslint-plugin-react to v7.12.4 (https://github.com/woocommerce/woocommerce-admin/pull/1418) 2019-01-30 13:59:32 -05:00
renovate[bot] 43c753011a Update dependency eslint to v5.12.1 (https://github.com/woocommerce/woocommerce-admin/pull/1376) 2019-01-30 13:53:25 -05:00
Timmy Crawford 974d263f69 Release/v0.6.0 (https://github.com/woocommerce/woocommerce-admin/pull/1417)
* Bump versions to 0.6.0

* Update docs

* Updates after running build.
2019-01-30 10:51:03 -08:00
renovate[bot] e2da828d1f Update dependency lerna to v3.10.7 (https://github.com/woocommerce/woocommerce-admin/pull/1419) 2019-01-30 13:14:58 -05:00
renovate[bot] d4a7cec89a Update dependency eslint-plugin-jest to v22.2.1 (https://github.com/woocommerce/woocommerce-admin/pull/1415) 2019-01-30 13:10:27 -05:00
Peter Fabian e433609d9d Updated test of schema for taxes/stats. 2019-01-30 18:46:06 +01:00
Peter Fabian 0ddc6d5e41 Added segmenting code for taxes/stats. 2019-01-30 18:36:20 +01:00
Peter Fabian 0d95552157 Added segmentby to schema, query arguments and allows parameters in the controller for taxes/stats. 2019-01-30 12:16:37 +01:00
Albert Juhé Lluveras 08dfea7cff Add Taxes REST controller override (https://github.com/woocommerce/woocommerce-admin/pull/1407) 2019-01-30 10:43:30 +01:00
Justin Shreve 53a6e49874 Finish cleaning up client/store. (https://github.com/woocommerce/woocommerce-admin/pull/1403) 2019-01-30 02:22:10 -05:00
Timmy Crawford 88ea613627 Build: Updates from latest npm publish (https://github.com/woocommerce/woocommerce-admin/pull/1409)
* remove unreleased tags from changelogs

* chore(release): publish

 - @woocommerce/components@1.4.1
 - @woocommerce/csv-export@1.0.3
 - @woocommerce/currency@1.1.0
 - @woocommerce/date@1.0.6
 - @woocommerce/navigation@1.1.1
 - @woocommerce/number@1.0.1
2019-01-29 15:37:25 -08:00
Claudio Sanches d1fef77ed0 Added unit tests for order deletation 2019-01-29 20:21:09 -02:00
Paul Sealock 4854933485 Merge pull request woocommerce/woocommerce-admin#1404 from woocommerce/fix/customers-date-between-args
Customers Report: REST API: Fix between argument handling
2019-01-30 10:32:54 +13:00
Paul Sealock f71bfa95f4 Merge pull request woocommerce/woocommerce-admin#1406 from woocommerce/fix/customers-order-count-filter
Customers Report: fix order count filter
2019-01-30 10:32:29 +13:00
Kelly Dwan dfd15f959a Components package: Add emoji-flags dependency (https://github.com/woocommerce/woocommerce-admin/pull/1411)
* Add emoji-flags to the components package.json

* Update the changelog
2019-01-29 16:19:00 -05:00
Claudio Sanches b0b506b397 Introduced new methods to clean up data when an order is deleted 2019-01-29 19:13:06 -02:00
Claudio Sanches 766fdeeada Remove extra validation 2019-01-29 18:50:44 -02:00
Claudio Sanches 272203b879 Introduced new woocommerce_reports_orders_stats_data_deleted hook 2019-01-29 18:50:15 -02:00
Peter Fabian 6efef57cba Factored out order-related product-level calculations to WC_Admin_Order and plugged it into the WC framework. 2019-01-29 19:57:04 +01:00
Timmy Crawford 10c6016d4c Update usage of lib/number to @woocommerce/number (https://github.com/woocommerce/woocommerce-admin/pull/1400)
* Remove usage of lib/number

* Remove formatNumber usage when currency is used.

* Add wc-number as a dependency of wc-currency.

* Add locutus as a dev dependency.

* Add number to test helper.
2019-01-29 08:48:46 -08:00
Peter Fabian e56009cfdc Updated todo format to be in line with the rest of WooCommerce. 2019-01-29 13:29:50 +01:00
Peter Fabian a3ae15d58e Removed obsolete comment. 2019-01-29 12:52:20 +01:00
Peter Fabian bee26375f9 Validate limit clause and set empty default if there is no limit. 2019-01-29 12:18:30 +01:00
Peter Fabian c2eaf6d71c Replaced REST exception with a custom exception and handle it in REST controllers. 2019-01-29 12:13:52 +01:00
Peter Fabian e4e09b4c39 Merge branch 'master' into fix/1035 2019-01-29 10:01:41 +01:00
Paul Sealock 3379491c91 Customers Report: fix order count filter 2019-01-29 13:35:27 +13:00
Timmy Crawford e136036ef9 Build: Create new number package (https://github.com/woocommerce/woocommerce-admin/pull/1399)
* Create new number package

* Updates per feedback.

* Update README.
2019-01-28 15:34:56 -08:00
Paul Sealock 765a007491 tweeek 2019-01-29 12:08:44 +13:00
Paul Sealock e6b42631f3 formatting 2019-01-29 11:48:40 +13:00
Paul Sealock 41bec03880 tweeks 2019-01-29 11:28:58 +13:00
Paul Sealock 370a747c2b add registered 2019-01-29 11:05:27 +13:00
Paul Sealock 3e16a37be0 add tests 2019-01-29 11:01:25 +13:00
Paul Sealock 483c199fbf tests working 2019-01-29 10:53:56 +13:00
Paul Sealock c6d1ce98c0 rest_validate_between_date_arg 2019-01-29 10:45:49 +13:00
Paul Sealock 2f022ffdba dry interval.php 2019-01-29 10:23:44 +13:00
Paul Sealock 3d0890a704 basic working 2019-01-29 09:21:11 +13:00
Paul Sealock bca0785e64 Customers Report: support between args for dates 2019-01-29 08:58:07 +13:00
Kevin Killingsworth 833345dfee Remove 'wc-admin' client/store implementation (https://github.com/woocommerce/woocommerce-admin/pull/1344)
This has been replaced by the `wc-api` store, under client/wc-api
2019-01-28 14:18:21 -05:00
Jeff Stieler 7592dae4bb Merge pull request woocommerce/woocommerce-admin#1385 from woocommerce/add/customers-report-table-summary
Add table summary to Customers Report
2019-01-28 09:59:52 -07:00
Jeff Stieler 2703a0da4c Merge pull request woocommerce/woocommerce-admin#1370 from woocommerce/fix/942-phpunit-gutenberg-dependency
Conditionally include Gutenberg plugin in test suite
2019-01-28 09:59:13 -07:00
Peter Fabian 71dc581f53 Merge pull request woocommerce/woocommerce-admin#1394 from woocommerce/fix/1393
Added zero-filling for intervals for taxes/stats endpoint
2019-01-28 13:09:02 +01:00
Albert Juhé Lluveras 066daa4b6a Add Top Coupons Block (https://github.com/woocommerce/woocommerce-admin/pull/1397)
* Add Top Coupons Block

* Order coupons by orders_count by default

* Fix wrong variable name
2019-01-25 18:59:53 +01:00
Joshua T Flowers 9c9ff13c2b Allow customer date_last_active to be null (https://github.com/woocommerce/woocommerce-admin/pull/1377)
* Allow customer date_last_active to be null

* Only show last active in customers report table if set
2019-01-25 09:37:50 -08:00
Timmy Crawford 40602efd89 Components; Fix SummaryNumber example (https://github.com/woocommerce/woocommerce-admin/pull/1392) 2019-01-25 09:17:09 -08:00
Peter Fabian 05aedb2a63 Added tests for ASC ordering. 2019-01-25 17:40:33 +01:00
Peter Fabian b87ca4f6aa Added filling in zeros for interval not having records in the database. 2019-01-25 14:54:14 +01:00
Peter Fabian c8c9cd4943 Updated error message to point to the correct report. 2019-01-25 13:30:27 +01:00
Peter Fabian 4c8a95cb89 Added fetching of db intervals for later use in zero-filling. 2019-01-25 13:29:59 +01:00
Peter Fabian 1c09b6836d Adjusted default return value when page is out of range. 2019-01-25 13:14:41 +01:00
Paul Sealock 050438a11c Add emoji flags 2019-01-25 13:17:08 +13:00
David Levin 74fcff642c Merge pull request woocommerce/woocommerce-admin#1382 from woocommerce/update/total-spend-label
Customer report: Update lifetime spend label and re-order columns + default sorting
2019-01-24 09:04:40 -08:00
Peter Fabian d75c963bb1 Merge branch 'master' into fix/1012-2 2019-01-24 11:18:23 +01:00
Albert Juhé Lluveras 95c21e0cc3 Move 'getLabels' functions into lib/async-requests (https://github.com/woocommerce/woocommerce-admin/pull/1379)
* Move labels loading logic into a lib

* Avoid making API calls when displaying Order labels

* Move lib/labels into lib/async-requests

* Rename 'getCustomerLabel' to 'getCustomerLabels'
2019-01-24 10:35:27 +01:00
Joshua T Flowers 81b6f0f61b Use tableQuery sorting when url query is not present (https://github.com/woocommerce/woocommerce-admin/pull/1378) 2019-01-24 09:36:11 +08:00
Joshua T Flowers 23f807c0a4 Add regex expression option to autocompleters (https://github.com/woocommerce/woocommerce-admin/pull/1380) 2019-01-24 09:35:47 +08:00
Jeff Stieler 8207bd7649 Add tests for customers report stats endpoint. 2019-01-23 17:48:22 -07:00
Jeff Stieler 6a215ceca9 Exclude customers with no orders from average orders count calculation. 2019-01-23 17:47:44 -07:00
Jeff Stieler 4cfa082d0f Load gutenberg from test plugins directory if required. 2019-01-23 16:59:10 -07:00
Peter Fabian c96b291a6c Added a bit of test for interval=hour order_by=date desc. 2019-01-23 22:13:00 +01:00
Peter Fabian 64f1418f22 Merge branch 'master' into fix/1012-2 2019-01-23 21:40:09 +01:00
Peter Fabian 5b46862584 Merge pull request woocommerce/woocommerce-admin#1371 from woocommerce/fix/1316-1
First attempt to fix tests failing around end of hour
2019-01-23 21:34:16 +01:00
Peter Fabian d61a4dd5bd Updated tests to be more stable around hour end. 2019-01-25 00:06:59 +01:00
David Levin 4c18267408 update orderby in index 2019-01-23 10:08:27 -08:00
David Levin e7a20b4216 update column lifetime spend column label, and re-order columns 2019-01-23 09:51:12 -08:00
Peter Fabian 33f1240987 Fix to remove extra intervals correctly. 2019-01-23 17:18:39 +01:00
Peter Fabian eff341d832 Made the interval sorting stable (second level sort by time_interval).
This is required so that intervals are sorted in the same way each time when going through pages of results.
2019-01-23 16:58:03 +01:00
Peter Fabian 71a9be299a Updated tests to pass before implementing the updated new/returning customer definition.
Context: https://github.com/woocommerce/wc-admin/issues/558#issuecomment-447782060
2019-01-23 13:29:40 +01:00
Peter Fabian 83a0d96f68 Added segmenting to response for revenue/stats test. 2019-01-23 10:37:09 +01:00
Peter Fabian e432a17f1e Added segmenting to response for products/stats test. 2019-01-23 10:36:50 +01:00
Peter Fabian f190c1bad1 Fixed copy-paste bug for testing subtotals in REST response. 2019-01-23 10:36:27 +01:00
Peter Fabian bcb7513f34 Added segmenting to response for coupons/stats test.
Fixed copy-paste error in test for subtotals.
2019-01-23 10:35:48 +01:00
Peter Fabian bc42e6d985 Fixed bug introduced during refactoring. 2019-01-23 10:34:55 +01:00
Peter Fabian fed94cbd0c Added segmenting to response for coupons/stats test.
Changed return type for currency.
2019-01-23 10:34:07 +01:00
Peter Fabian 507ee13825 Merge branch 'master' into fix/1035
# Conflicts:
#	client/analytics/report/customers/table.js
#	includes/api/class-wc-admin-rest-reports-orders-stats-controller.php
#	tests/reports/class-wc-tests-reports-orders-stats.php
2019-01-23 10:13:55 +01:00
Paul Sealock 3521e8d485 Merge pull request woocommerce/woocommerce-admin#1329 from woocommerce/fix/reduce-margin-small-views
Reports: Reduce Margins on Small Viewports
2019-01-23 14:38:48 +13:00
Peter Fabian 012e14c589 Corrected time-calculation of last interval. 2019-01-22 19:50:35 +01:00
Jeff Stieler 0ef976f964 Increase default wc-api timeout to 1 minute.
Large datasets may cause responses to take longer than 5 seconds.
2019-01-22 11:22:28 -07:00
Jeff Stieler 2d4aea1971 Only install/activate Gutenberg plugin if WP version under test is earlier than 5.0. 2019-01-22 10:44:00 -07:00
Peter Fabian 8a9a2c0673 Fixed interval arithmetic for hours and days. 2019-01-22 17:49:02 +01:00
David Levin e9bb73f23d Update order of summary numbers on taxes report (https://github.com/woocommerce/woocommerce-admin/pull/1356) 2019-01-22 07:49:17 -08:00
Paul Sealock 48f6777ea3 side margins 2019-01-22 13:24:01 +13:00
Paul Sealock 258c298e91 400 2019-01-22 13:11:06 +13:00
Paul Sealock 0e01c98851 Reports: Reduce Margins on Small Viewports 2019-01-22 12:29:32 +13:00
Paul Sealock a52fab85de Merge pull request woocommerce/woocommerce-admin#1332 from woocommerce/fix/summary-number-close-on-mobile
SummaryNumbers: close on click for mobile
2019-01-22 12:09:07 +13:00
Paul Sealock 35b3579632 Orders Report: Point table links to wc-admin reports with persisted query 2019-01-22 11:32:33 +13:00
Paul Sealock c7b705fb08 SummaryNumbers: close on click for mobile 2019-01-22 11:31:37 +13:00
Paul Sealock d09c68660b Merge pull request woocommerce/woocommerce-admin#1328 from woocommerce/fix/Filters-only-complete-ranges
Advanced Filters: Ranges: Allow update only on complete selection
2019-01-22 11:21:10 +13:00
Justin Shreve fdddca1186 Merge pull request woocommerce/woocommerce-admin#1366 from woocommerce/fix/schema-typo
Fix performance-indicators/allowed schema.
2019-01-21 15:54:15 -05:00
Albert Juhé Lluveras 834901bc84 Fill full plot area in bar charts (https://github.com/woocommerce/woocommerce-admin/pull/1365)
* Fill full plot area in bar charts

* Refactor chart scales tests
2019-01-21 20:58:38 +01:00
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
Paul Sealock 1fa45e4364 Merge pull request woocommerce/woocommerce-admin#1146 from woocommerce/add/date-filter-calendar
Advanced Filters: Add DatePicker
2019-01-15 09:43:10 +13:00
Paul Sealock 64d52b0d2f Merge pull request woocommerce/woocommerce-admin#1233 from woocommerce/fix/devDocs-filePath
Fix/dev docs file path
2019-01-15 09:42:24 +13:00
Justin Shreve a3ccfd300e Fix date formatting in safari by switching to moment (https://github.com/woocommerce/woocommerce-admin/pull/1290) 2019-01-14 11:29:46 -05:00
Peter Fabian 13ec8e2851 FOrmula for shipping distribution among line items updated to reflect qty, so that sum of shipping per line item equals total shipping amount. 2019-01-14 16:10:13 +01:00
renovate[bot] 81b28d7b19 Update dependency eslint-plugin-react to v7.12.3 (https://github.com/woocommerce/woocommerce-admin/pull/1261) 2019-01-14 12:52:16 +01:00
renovate[bot] af91eacacb Lock file maintenance (https://github.com/woocommerce/woocommerce-admin/pull/1242) 2019-01-14 12:08:06 +01:00
renovate[bot] 2cd434c676 Update dependency chalk to v2.4.2 (https://github.com/woocommerce/woocommerce-admin/pull/1258) 2019-01-14 11:47:28 +01:00
renovate[bot] 0f25d33fcc Update dependency babel-loader to v8.0.5 (https://github.com/woocommerce/woocommerce-admin/pull/1257) 2019-01-14 11:45:23 +01:00
renovate[bot] 0bdbf3b724 Update dependency eslint to v5.12.0 (https://github.com/woocommerce/woocommerce-admin/pull/1259) 2019-01-14 11:42:51 +01:00
renovate[bot] 8ff156fb8d Update dependency autoprefixer to v9.4.5 (https://github.com/woocommerce/woocommerce-admin/pull/1256) 2019-01-14 11:31:18 +01:00
renovate[bot] b19b8b8687 Update dependency lerna to v3.10.5 (https://github.com/woocommerce/woocommerce-admin/pull/1262) 2019-01-14 11:26:35 +01:00
Albert Juhé Lluveras f009506a45 Makes table dates accessible (https://github.com/woocommerce/woocommerce-admin/pull/1274)
* Create 'Date' component to render accessible dates

* Add tests
2019-01-14 10:54:44 +01:00
Paul Sealock be76392a0c devDocs: update path for prop docs 2019-01-14 15:07:28 +13:00
Paul Sealock 7525e2347a Add calendar to date advanced filter 2019-01-14 13:22:39 +13:00
Albert Juhé Lluveras 328a49127a Remove decimals from Y-axis (https://github.com/woocommerce/woocommerce-admin/pull/1288)
* Remove decimals from Y-axis

* Add CHANGELOG message
2019-01-11 19:18:31 +01:00
Albert Juhé Lluveras ad457cc123 Avoid duplicated Y-axis values (https://github.com/woocommerce/woocommerce-admin/pull/1289)
* Avoid duplicated yGrids

* Add tests

* Rename 'roundedValue' to 'value' to better reflect its contents

* Add CHANGELOG message
2019-01-11 19:16:29 +01:00
Albert Juhé Lluveras 753ec498ba Update activity button focus styles (https://github.com/woocommerce/woocommerce-admin/pull/1287)
* Update activity button focus styles

* Set overflow to 'auto' instead of 'scroll' in activity panels
2019-01-11 18:45:06 +01:00
Peter Fabian 20090a90e4 Added segments property to revenue test. 2019-01-11 18:39:57 +01:00
Peter Fabian 562e21ff54 Replace time interval keys with numeric ones to format REST response correctly. 2019-01-11 18:20:43 +01:00
Timmy Crawford 7d89799194 Remove hour from default clause in getAllowedIntervalsForQuery when period is empty (https://github.com/woocommerce/woocommerce-admin/pull/1279) 2019-01-11 07:51:24 -08:00
Justin Shreve 764845a6c0 Add top categories block (https://github.com/woocommerce/woocommerce-admin/pull/1276)
* Add Top Categories Block

* Update category and product blocks with correct links.

* Handle PR feedback/design cleanup
2019-01-11 10:11:10 -05:00
Peter Fabian 8059251656 Updated type for products field in response. 2019-01-11 15:29:03 +01:00
Peter Fabian ab4eb674e2 Added segments fields to expected response in tests. 2019-01-11 15:28:28 +01:00
Peter Fabian bc68976fb7 Updated schema tests to reflect latest changes. 2019-01-11 15:27:24 +01:00
Peter Fabian 26925872ec Corrected return types so that no segmented queries work fine. 2019-01-11 15:25:17 +01:00
Peter Fabian ebe76c2d43 Added missing parameter to new data stores. 2019-01-11 15:23:13 +01:00