* Add customer functions to order and refund classes
* Use parent order for refund order number
* Add renderCurrency method to format negative currencies
* Allow negative number of items for refund fields in database
* 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
* Sync refunds on order sync
* Separate order and refund class extensions
* Add customer functions to order and refund classes
* Change products store to work with refund amounts
* Return early for refunds in coupon data store
* Allow refund processing in tax data store
* Remove unused refund amounts from tables and data stores
* Change order counts to parse out refund entries
* Include refunded orders in default queried statuses
* Only process order number filter on shop order post types
* Extract shared order and refund methods to trait
* Fix renamed schedule_single_order_import method
* Bump PHP and WP version requirements
* Change coupons sum to distinct coupon count in REST API
* Hook up unique coupon count to orders summary numbers
* Add coupons count to order segmenting
* Add coupons count to expected stats in order test and revenue tests
* Translation call text domain change from “wc-admin” to “woocommerce-admin”.
* Fix .pot file generation.
* Fix errantly closed array item in /revenue/stats controller.
* Rename plugin zip, main file, and repo name to "woocommerce-admin".
* Fix indendtation for table creations
* Refactor how customers are created on order update
* Check if user has a role of customer or previous orders before storing
* Add tests for user creation
* Allow null emails for customers
* Only select customer_id in guest ID query
* Excluded statuses from customers oldest orders
* Fix tests for returning customer where excluded statuses are used
* Remove save_post hook used for testing
* Extract conditions for first order swapping
* Add get_oldest_orders function to customer data store
* Check if is first order in is_returning_customer()
* Check if the customers first order has changed and update all orders respectively
* Fix check for empty oldest_orders array
* Change avg_items_per_order to number instead of integer
* Fix failing tests for new/returning customers
Only the first orders with product 1 and without coupons should be new per each customer
* Remove sleep functions from tests
* Assign second order to a variable for legibility
* Fix second order assignment and check if set
* 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
* 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
* 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